电子说
Docker 集成搭建 NGINX
1、购买华为云 Flexus X 实例
Flexus云服务器X实例-华为云 (huaweicloud.com)
2、docker 安装
yum install -y docker-ce
3、验证 Docker 是否安装成功,启动 docker 服务并设置开机自启动,且查看 docker 状态
docker --versionsystemctl enable dockersystemctl start dockersystemctl status docker
4、docker-ce 下载
wget -O /etc/yum.repos.d/docker-ce.repo https://mirrors.huaweicloud.com/docker-ce/linux/centos/docker-ce.repo
5、路径/etc/yum.repos.d 修改配置文件
[docker-ce-stable]name=Docker CE Stable - $basearchbaseurl=https://repo.huaweicloud.com/docker-ce/linux/centos/9.9/$basearch/stableenabled=1gpgcheck=1gpgkey=https://repo.huaweicloud.com/docker-ce/linux/centos/gpg[docker-ce-stable-debuginfo]name=Docker CE Stable - Debuginfo $basearchbaseurl=https://repo.huaweicloud.com/docker-ce/linux/centos/9.9/debug-$basearch/stableenabled=0gpgcheck=1gpgkey=https://repo.huaweicloud.com/docker-ce/linux/centos/gpg[docker-ce-stable-source]name=Docker CE Stable - Sourcesbaseurl=https://repo.huaweicloud.com/docker-ce/linux/centos/9.9/source/stableenabled=0gpgcheck=1gpgkey=https://repo.huaweicloud.com/docker-ce/linux/centos/gpg[docker-ce-test]name=Docker CE Test - $basearchbaseurl=https://repo.huaweicloud.com/docker-ce/linux/centos/9.9/$basearch/testenabled=0gpgcheck=1gpgkey=https://repo.huaweicloud.com/docker-ce/linux/centos/gpg[docker-ce-test-debuginfo]name=Docker CE Test - Debuginfo $basearchbaseurl=https://repo.huaweicloud.com/docker-ce/linux/centos/9.9/debug-$basearch/testenabled=0gpgcheck=1gpgkey=https://repo.huaweicloud.com/docker-ce/linux/centos/gpg[docker-ce-test-source]name=Docker CE Test - Sourcesbaseurl=https://repo.huaweicloud.com/docker-ce/linux/centos/9.9/source/testenabled=0gpgcheck=1gpgkey=https://repo.huaweicloud.com/docker-ce/linux/centos/gpg[docker-ce-nightly]name=Docker CE Nightly - $basearchbaseurl=https://repo.huaweicloud.com/docker-ce/linux/centos/9.9/$basearch/nightlyenabled=0gpgcheck=1gpgkey=https://repo.huaweicloud.com/docker-ce/linux/centos/gpg[docker-ce-nightly-debuginfo]name=Docker CE Nightly - Debuginfo $basearchbaseurl=https://repo.huaweicloud.com/docker-ce/linux/centos/9.9/debug-$basearch/nightlyenabled=0gpgcheck=1gpgkey=https://repo.huaweicloud.com/docker-ce/linux/centos/gpg[docker-ce-nightly-source]name=Docker CE Nightly - Sourcesbaseurl=https://repo.huaweicloud.com/docker-ce/linux/centos/9.9/source/nightlyenabled=0gpgcheck=1gpgkey=https://repo.huaweicloud.com/docker-ce/linux/centos/gpg
6、清除和构建缓存
yum clean allyum makecache
7、docker 配置镜像加速(在华为云镜像中心可获取自己的镜像加速配置)
8、创建镜像加速配置文件
vim /etc/docker/daemon.json
{"registry-mirrors": [ "https://fd0cfec0ac0d446db7fd9d27e92d4a8e.mirror.swr.myhuaweicloud.com" ]}
9、重新加载配置文件,重新启动 docker,查看是否配置成功
systemctl daemon-reloadsystemctl restart docker.service
10、docker info 查看配置信息,是否配置成功镜像加速
docker info
11、docker 拉取 nginx,默认拉取最新版
docker pull nginx
12、Docker 中启动一个 Nginx 容器,并将主机的 8888 端口映射到容器的 80 端口
docker run -itd --name web --restart always -p 8888:80 nginx
13、华为云放行端口 8888
14、关闭并且警用防火墙
systemctl stop firewalldsystemctl disable firewalldsystemctl status firewalld
15、公网 ip:8888 访问测试,如下页面则搭建成功 NGINX
• 后续操作可以进入 NGINX 容器配置,如反向代理,静态文件等
ocker exec -it eef95bc22406 /bin/bash
• 进入/etc/nginx/conf.d 路径可查看 NGINX 默认配置(需要在容器中下载 vim 命令才能使用 vim)
apt-get updateapt-get install -y vim
• 安装成功即可使用 vim 打开配置,配置需要的服务
配置反向代理
如果你有后端应用(如 Node.js、Python Flask 等),可以配置 NGINX 作为反向代理,将请求转发到这些应用
server { listen 80; server_name your_domain.com; location / { proxy_pass http://backend_app:port; #后端应用地址 proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; }}
设置静态文件服务
配置 NGINX 提供静态文件服务,比如 HTML、CSS 和 JavaScript 文件
server { listen 80; server_name your_domain.com; location / { root /path/to/your/static/files; #静态文件目录 index index.html; }}
启用 HTTPS
使用 Let's Encrypt 或其他证书机构为你的域名申请 SSL/TLS 证书,并在 NGINX 中配置 HTTPS
server { listen 443 ssl; server_name your_domain.com; ssl_certificate /path/to/cert.pem; ssl_certificate_key /path/to/key.pem; location / { proxy_pass http://backend_app:port; }}
设置负载均衡
如果有多个后端服务器,可以配置 NGINX 进行负载均衡
upstream backend { server backend1:port; server backend2:port;}server { listen 80; location / { proxy_pass http://backend; }}
监控和日志
配置访问日志和错误日志,便于后续监控和调试
http { access_log /var/log/nginx/access.log; error_log /var/log/nginx/error.log;}
总结
华为云服务器 Flexus X 实例,Docker 集成搭建 NGINX 以提升项目的开发效率和部署灵活性,深入了解了 Docker 的使用及其在快速部署中的优势,这种容器化的方式,使得应用的管理和扩展变得更加灵活,如果有小伙伴需要学习如何搭建,可以前往购买华为云服务器 Flexus X 实例,目前正值促销期间,优惠力度非常大!
华为云828 Flexus X实例
审核编辑 黄宇
全部0条评论
快来发表一下你的评论吧 !