準(zhǔn)備工作
1.安裝docker環(huán)境
2.下載相應(yīng)nginx docker 鏡像
3.創(chuàng)建宿主機(jī)掛載logs文件
一、下載docker鏡像
我們使用的是官方redis 鏡像nginx:1.18
執(zhí)行拉去鏡像命令
docker pull nginx:1.18

image.png
這里我已經(jīng)提前下載過該鏡像了。
二、創(chuàng)建掛載宿主機(jī)掛載文件目錄
根據(jù)自己的操作習(xí)慣創(chuàng)建相應(yīng)的logs文件
[root@iZbp18fygyh37em2nkknokZ ~]# cd /software/docker/
[root@iZbp18fygyh37em2nkknokZ docker]# ls
[root@iZbp18fygyh37em2nkknokZ docker]# mkdir -p nginx/logs
[root@iZbp18fygyh37em2nkknokZ docker]# ls
logs
[root@iZbp18fygyh37em2nkknokZ redis-test-dt]#
三、啟動容器
[root@iZbp18fygyh37em2nkknokZ ]# docker run -itd --name nginx -p 80:80 -v /software/docker/nginx/logs:/var/log/nginx nginx:1.18
參數(shù)解釋:
-d: 后臺運(yùn)行容器,并返回容器ID;
-i: 以交互模式運(yùn)行容器,通常與 -t 同時使用;
-p: 端口映射,格式為:主機(jī)(宿主)端口:容器端口
-t: 為容器重新分配一個偽輸入終端,通常與 -i 同時使用;
-v :映射數(shù)據(jù)目錄
四、拷貝容器中的數(shù)據(jù)到創(chuàng)建好的宿主機(jī)目錄中
[root@iZbp18fygyh37em2nkknokZ ]# docker cp nginx:/etc/nginx/nginx.conf /software/docker/nginx/nginx.conf
數(shù)據(jù)備份,就算刪除容器重建,只要掛載該文件,重建的容器數(shù)據(jù)還是刪除前的數(shù)據(jù)。
[root@iZbp18fygyh37em2nkknokZ ]# docker cp mysq-test:/etc/mysql/mysql.conf.d/mysqld.cnf /software/docker/mysql/config/mysqld.cnf
自行修改nginx.conf 代理
五、刪除原容器重新構(gòu)建
[root@iZbp18fygyh37em2nkknokZ ]# docker rm -f nginx
nginx
[root@iZbp18fygyh37em2nkknokZ ]# docker run -itd --name nginx -p 80:80 -v /software/docker/nginx/logs:/var/log/nginx -v /software/docker/nginx/nginx.conf:/etc/nginx/nginx.conf nginx:1.18
4beb59fe117148e08b6d39136fbc07835210e2287d0db0e4e62e6e3e93920cda
[root@iZbp18fygyh37em2nkknokZ ]# docker ps
啟動成功,訪問nginx域名測試