Docker Nginx

啟動虛擬機并進入

$ docker-machine ls

$ docker-machine start default

$ docker-machine ip
192.168.99.100

$ docker-machine ssh default
docker@default ~$

從DockerHub中搜索Nginx鏡像

docker@default ~$ docker search nginx

從DockerHub拉取Nginx鏡像

docker@default ~$ docker pull nginx
docker@default ~$ docker images | grep nginx

運行容器

docker@default ~$ docker run  -d -p 8000:80 --rm --name mynginx nginx

查看Ngnix容器是否已經(jīng)啟動

docker@default ~$ docker ps -a | grep mynginx
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                               NAMES
2ea6cc94195d        nginx               "nginx -g 'daemon of…"   3 seconds ago       Up 3 seconds        0.0.0.0:8000->80/tcp                mynginx

使用瀏覽器訪問 http://192.168.99.100:8000

Nginx

進入mynginx容器

docker@default ~$ docker exec -it mynginx bash
root@2ea6cc94195d:/# 

查看Nginx安裝地址

root@2ea6cc94195d:/# whereis nginx
nginx: /usr/sbin/nginx /usr/lib/nginx /etc/nginx /usr/share/nginx

退出mynginx容器

root@2ea6cc94195d:/# exit

停止后刪除mynginx容器

docker@default ~$ docker stop mynginx

如果在docker run中沒有添加--rm選項,則需要docker stop后再docker rm移除鏡像。

docker@default ~$ docker rm mynginx

目前雖然Docker中的Nginx已經(jīng)運行起來,但是為了每次配置方便,我們需要將Nginx的配置文件、靜態(tài)目錄、日志目錄掛載到宿主機上,這樣在宿主機上修改配置后,可以同步到Docker中的Nginx中。

docker@default ~$ docker run -d -p 8000:80 -v /share/nginx/html:/usr/share/nginx/html --rm --name mynginx nginx

檢查下是否掛載成功

docker@default ~$ docker ps -a | grep mynginx
59d01719ec69        nginx               "nginx -g 'daemon of…"   7 seconds ago       Up 6 seconds        0.0.0.0:8000->80/tcp                mynginx

這里出現(xiàn)了一個問題是:如果我掛載mynginx容器中/etc/nginix目錄則不能啟動容器,怎么辦呢?

經(jīng)過檢查發(fā)現(xiàn)在/etc/nginx/nginx.conf配置文件中配置多域名的最終文件在/etc/nginx/conf.d目錄下,于是,我就改變的掛載點:

# 首先停止容器并自動刪除
docker@default ~$ docker stop mynginx

# 重新設置掛載點后運行容器
docker@default ~$ docker run -d -p 8000:80 -v /share/nginx/html:/usr/share/nginx/html -v /share/nginx/etc/conf.d:/etc/nginx/conf.d --rm --name  mynginx nginx

# 檢查鏡像是否啟動成功掛載是否成功
docker@default ~$ docker ps -a|grep mynginx
416d2b067450        nginx               "nginx -g 'daemon of…"   6 minutes ago       Up 6 minutes        0.0.0.0:8000->80/tcp                mynginx

這一次成功了,但是疑惑仍然留下心頭。

未完待續(xù)...

最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內(nèi)容