小柏实战学习Liunx(图文教程三十五)
本节课主题:上一节课,docker镜像加速服务器搭建完成后,本节课需要配置域名,并使用nginx端口转发;
前言:一定要知道每一个命令是啥意思,并且要学会看报错信息,学会使用AI。
1. 更新系统包
sudo dnf update -y
2. 添加 EPEL 仓库 CentOS 9 默认仓库可能没有 Nginx,建议添加 EPEL 仓库:
sudo dnf install epel-release -y
3. 安装 Nginx , 从 EPEL 仓库安装 Nginx:
sudo dnf install nginx -y
4. 启动并启用 Nginx 服务
sudo systemctl start nginx
sudo systemctl enable nginx
5. 验证安装成功
nginx -v
应该显示类似:nginx version: nginx/1.24.0
6. 修改nginx配置,备份原始配置(重要!)
sudo cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.bak
7. 编辑主配置文件
sudo vi /etc/nginx/nginx.conf
8. 在 http
块内添加反向代理配置
找到 http { ... }
块,并在其中添加以下内容(不要删除原有配置,只是新增 server
块):
http { # 原有的全局配置(如 worker_processes, events 等) ... # 新增反向代理配置
server { listen 80; listen 443 ssl; ## 填写绑定证书的域名 server_name baidu.com; ## 证书文件名称(填写你证书存放的路径和名称) ssl_certificate /etc/nginx/baidu.com_bundle.crt; ## 私钥文件名称(填写你证书存放的路径和名称) ssl_certificate_key /etc/nginx/baidu.com.key; ssl_session_timeout 1d; ssl_session_cache shared:SSL:50m; ssl_session_tickets off; ssl_protocols TLSv1.2 TLSv1.3; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE; ssl_prefer_server_ciphers on; ssl_buffer_size 8k; proxy_connect_timeout 600; proxy_send_timeout 600; proxy_read_timeout 600; send_timeout 600; location / { proxy_pass http://localhost:5000; 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-Nginx-Proxy true; proxy_buffering off; proxy_redirect off; } } # 其他原有配置(如 include /etc/nginx/conf.d/*.conf) ... }
9. 检查配置语法
sudo nginx -t
如果显示 syntax is ok
,说明配置正确。
10. 重启 Nginx
sudo systemctl restart nginx
课程都到这里了,下面的常识应该达成共识了,这里只最后提醒一下,真不会的评论区留言,人多的话我再写一个课程:
1.确保j举例的域名 baidu.com
的 DNS 已解析到你的服务器 IP;
2.确保域名对应ssl证书,已经放到对应的目录下了;
3.确保任意IP 都能访问你的国外服务器的 ip +端口 (防火墙关掉,安全组放行);
11. 书接上回三十四课,这样就可以在需要docker加速的服务器上更新docker配置文件为:
{ "registry-mirrors": ["https://baidu.com"], "insecure-registries": ["baidu.com"] }