查询特定的 nginx 容器连接到哪个网络
docker inspect <nginx_container_id_or_name> | grep NetworkMode
安装 docker
sudo yum update
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo yum install -y docker-ce
sudo systemctl start docker
sudo systemctl enable docker
前期工作:
- nginx.conf 配置文件建议放在项目下,以此作为镜像内的
/etc/nginx/nginx.conf 的映射文件:
- 项目文件路径:/root/online/项目名称/.
- nginx.conf 文件路径:/root/online/nginx.conf
安装 nginx 镜像并启动
docker inspect nginx | grep NetworkMode
docker run -d \
--name nginx \
-p 8001:8001 \
-p 8002:8002 \
-p 443:433 \
-v /root/online:/root/online \
-v /root/online/nginx.conf:/etc/nginx/nginx.conf \
-v /var/lib/docker/volumes/acme-certs/_data:/root/certs \
--network littaro \
nginx
查看 nginx 镜像是否成功启动
docker ps -a
nginx.conf 配置
user root;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;
include /usr/share/nginx/modules/*.conf;
events {
worker_connections 1024;
}
http {
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 65;
types_hash_max_size 4096;
include /etc/nginx/mime.types;
default_type application/octet-stream;
include /etc/nginx/conf.d/*.conf;
server {
listen 8001;
listen [::]:8001;
server_name _;
root /root/online/mes;
include /etc/nginx/default.d/*.conf;
location / {
index index.html index.html;
try_files $uri $uri/ /index.html;
proxy_connect_timeout 90;
proxy_send_timeout 90;
proxy_read_timeout 90;
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 http_user_agent $http_user_agent;
}
location ^~/api/ {
proxy_pass http://43.139.101.117:30059/;
}
error_page 404 /404.html;
location = /404.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
}
server {
listen 8002;
listen [::]:8002;
server_name _;
root /root/online/poineer;
include /etc/nginx/default.d/*.conf;
location / {
index index.html index.html;
try_files $uri $uri/ /index.html;
proxy_connect_timeout 90;
proxy_send_timeout 90;
proxy_read_timeout 90;
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 http_user_agent $http_user_agent;
}
location ^~/api/ {
proxy_pass http://43.139.101.117:30059/;
}
error_page 404 /404.html;
location = /404.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
}
server {
listen 443 ssl;
server_name autocity-dev.littaro.cn;
root /root/online/mes;
ssl_certificate /var/lib/docker/volumes/acme-certs/_data/littaro.cer;
ssl_certificate_key /var/lib/docker/volumes/acme-certs/_data/littaro.key;
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
location / {
index index.html index.htm;
try_files $uri $uri/ /index.html;
proxy_connect_timeout 90;
proxy_send_timeout 90;
proxy_read_timeout 90;
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 http_user_agent $http_user_agent;
}
location ^~/api/ {
proxy_pass https://mes-test.littaro.cn/;
}
}
server {
listen 80;
listen [::]:80;
server_name mes-test.littaro.cn;
rewrite ^(.*)$ https://$host$1 permanent;
}