nginx鏡像構(gòu)建的知識點及方法步驟詳解
1、如何進入nginx容器
// 通過exec命令可以進入到鏡像里面。 docker exec -it nginx-alpine /bin/sh // 退出鏡像 exit
這里需要注意下,如果是標(biāo)準(zhǔn)的nginx鏡像,一般是通過 docker exec -it nginx01 bash 來進入到鏡像里面。
所以當(dāng)通過 bash 進不去的時候,可換成其他命令試試。
比如:docker exec -it nginx-alpine sh
因為Dockerfile沒有設(shè)置WORKDIR,所以進去后就到根目錄了。而且因為當(dāng)前的nginx鏡像是alpine版本,進去后用不了 ll 命令,只能是 ls 命令。相當(dāng)于精簡了一些命令。
nginx配置文件在/etc/nginx
2、把文件從宿主機拷貝到容器里面
方法一:
通過docker的cp命令。
// 比如當(dāng)前在 /data/docker目錄,下面命令是拷貝目錄下的nginx.conf配置文件到容器7d0b413ce005(容器id,可通過docker ps查看)的/etc/nginx目錄里面 docker cp nginx.conf 7d0b413ce005:/etc/nginx/
方法二:
在創(chuàng)建鏡像的時候,一起拷貝文件。這就需要在Dockerfile文件里面寫命令了。
// 在Dockerfile文件中新增COPY命令。拷貝跟Dockerfile同目錄下的index.html到容器的/usr/share/nginx/html目錄下面。如果容器有該文件,則會替換掉。 COPY index.html /usr/share/nginx/html/
3、啟停容器和nginx鏡像以及查看nginx日志
容器的操作:
// 可以通過容器id來啟動停止操作。比如改了nginx的配置,那可以通過容器的restart命令來應(yīng)用剛才的nginx配置。 docker start 13e9f1a7c64f docker stop 13e9f1a7c64f docker restart 13e9f1a7c64f // 查看nginx日志。logs后面加容器的名稱或者容器的id docker logs nginx-alpine docker logs 13e9f1a7c64f // 也可以通過容器名稱來啟動停止操作。nginx-alpine是容器名稱,可通過docker ps和docker ps -a查看。 docker start nginx-alpine docker stop nginx-alpine docker restart nginx-alpine
nginx鏡像的操作
// 13e9f1a7c64f是容器id,可通過docker ps查看。前提是容器在運行中。 docker exec 13e9f1a7c64f nginx -s stop docker exec 13e9f1a7c64f nginx -s start docker exec 13e9f1a7c64f nginx -s reload
執(zhí)行上面命令的前提是容器在運行中。
如果容器不在運行中,可通過容器的操作來啟動容器,再操作nginx。
所以一般不操作nginx命令,而是操作容器來啟停nginx鏡像服務(wù)。
如果想停止nginx服務(wù),可以通過容器的stop,而不是用nginx的stop命令。啟動,則是容器的start命令。重啟,則是容器的restart命令。
比如改了nginx的配置,那可以通過容器的restart命令就可以。
4、鏡像和容器的刪除操作
// 刪除鏡像。可通過docker images查看imageid docker rmi imageid // 刪除容器。可通過docker ps或者docker ps -a查看containerid docker rm containerid
5、docker的啟動等操作
systemctl start docker systemctl stop docker systemctl status docker
6、保存和導(dǎo)入鏡像或容器
// 保存容器nginx-alpine:v1到tar文件。 save -o nginx-alpine.tar nginx-alpine:v1 // 導(dǎo)入鏡像 docker load -i nginx-alpine.tar
7、使用nginx -g daemon off啟動nginx容器的原因
簡單來說,是為了保持nginx容器不退出,要關(guān)閉nginx后臺運行。
以上就是nginx鏡像構(gòu)建的知識點及方法步驟詳解的詳細(xì)內(nèi)容,更多關(guān)于nginx鏡像構(gòu)建的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
nginx配置域名轉(zhuǎn)發(fā)到其他域名的幾種方法小結(jié)
本文主要介紹了nginx配置域名轉(zhuǎn)發(fā)到其他域名的幾種方法小結(jié),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-06-06Nginx禁止國外IP訪問我的網(wǎng)站的實現(xiàn)
本文主要介紹了Nginx禁止國外IP訪問我的網(wǎng)站的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-07-07解決systemctl reload nginx重啟Nginx服務(wù)報錯:Job for&n
文章描述了通過`systemctl status nginx.service`發(fā)現(xiàn)Nginx服務(wù)未啟動,啟動失敗的原因可能是端口號被占用,使用`netstat -ntlp | grep 80`命令找到了占用80端口的進程(PID為7008),通過`kill 7008`停止了該進程,然后重新啟動Nginx2025-01-01Nginx配置Https安全認(rèn)證的實現(xiàn)
為了保障應(yīng)用的安全性,我們在架構(gòu)網(wǎng)絡(luò)層的時候需要采用HTTPS協(xié)議。本文介紹了Nginx配置Https安全認(rèn)證的實現(xiàn),分享給大家,感興趣的可以了解一下2021-05-05深入分析nginx+php-fpm服務(wù)HTTP狀態(tài)碼502
這篇文章主要介紹了深入分析nginx+php-fpm服務(wù)HTTP狀態(tài)碼502,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07