🌸🌸 Linux安裝- docker/docker-compose/nginx 優雅部署 🌸🌸
一、一鍵安裝jdk
yum install -y java-1.8.0-openjdk.x86_64
- 驗證
二、安裝docker
yum list docker-ce --showduplicates | sort -r
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
sudo yum makecache fast
sudo yum install docker-ce
sudo service docker start
- 驗證
三、安裝docker-compose
sudo curl -L "https://github.com/docker/compose/releases/download/v2.26.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
- 驗證
docker-compose --version
- 不推薦(
github
不穩定時,容易下載失敗,docker-compose
里的內容會各種錯誤)
- 不推薦(
- 若下載失敗則手動安裝(推薦,可以自己選擇適配的)
- 下載后放入指定位置,如
/usr/local/bin
,(GitHub不穩定開下梯子) - 更改二進制文件名字,
mv docker-compose-linux-x86_64 docker-compose
sudo chmod +x /usr/local/bin/docker-compose
- 驗證
docker-compose --version
四、docker
編排安裝nginx
- 配置文件參考:RuoYi-Vue-Plus
- 文件放置,注意授權
chmod -R 777 /docker/
nginx.conf
worker_processes 1;error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;events {worker_connections 1024;
}http {include mime.types;default_type application/octet-stream;sendfile on;keepalive_timeout 65;# 限制body大小client_max_body_size 100m;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;server {listen 188;server_name localhost;# 限制外網訪問內網 actuator 相關路徑location ~ ^(/[^/]*)?/actuator(/.*)?$ {return 403;}location / {root /usr/share/nginx/pig/html;try_files $uri $uri/ /index.html;index index.html index.htm;}error_page 500 502 503 504 /50x.html;location = /50x.html {root html;}}server {listen 80;server_name localhost;# 限制外網訪問內網 actuator 相關路徑location ~ ^(/[^/]*)?/actuator(/.*)?$ {return 403;}location / {root /usr/share/nginx/html; # docker映射路徑 不允許更改try_files $uri $uri/ /index.html;index index.html index.htm;}error_page 500 502 503 504 /50x.html;location = /50x.html {root html;}}
}
docker-compose
version: '3'
services:nginx-web:image: nginx:1.23.4container_name: nginx-webenvironment:# 時區上海TZ: Asia/Shanghaiports:- "80:80"- "443:443"volumes:# 證書映射- /docker/nginx/cert:/etc/nginx/cert# 配置文件映射- /docker/nginx/conf/nginx.conf:/etc/nginx/nginx.conf# 頁面目錄- /docker/nginx/html:/usr/share/nginx/html- /docker/nginx/pig/html:/usr/share/nginx/pig/html# 日志目錄- /docker/nginx/log:/var/log/nginxprivileged: truenetwork_mode: "host"
-
注意
nginx
和docker-compose
的配置要對應 -
將前端文件放入***
宿主機
***指定位置- 不要按照容器的地址放在宿主機地址了,那樣不會找到前端文件的,可能會報
403
,因為找不到文件
- 不要按照容器的地址放在宿主機地址了,那樣不會找到前端文件的,可能會報
-
驗證