Docker 映象基礎(三)
阿新 • • 發佈:2020-07-29
基於Dockerfile製作yum版本nginx映象
[root@node-2 ~]# mkdir /opt/nginx [root@node-2 ~]# cd /opt/nginx/ ## 建立Dockerfile檔案(Dockerfile 開頭字母必須大寫): vim Dockerfile # # docker web images FROM centos:latest RUN yum install epel-release -y RUN yum install nginx -y EXPOSE 80 443 8080 CMD ["/usr/sbin/nginx","-g","daemon off;"] ## 沒有新增環境變數進去 只能寫全路徑 ## 生成Dockerfile映象: docker build -t nginx:v1 . ## 最後有個點 很重要 ## 檢視生成的docker images: [root@node-2 nginx]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE nginx v1 ad4850303e64 3 minutes ago 333MB centos latest 831691599b88 3 weeks ago 215MB ## 從生成的映象執行一個容器: docker run -ti --rm -p 80:80 nginx:v1 ## 訪問 這個容器的IP : http://ip/
建立nginx 自定義介面:
## 確認映象裡面的nginx 程式碼目錄在哪裡: docker run -ti --rm -p 80:80 nginx:v1 bash vim /etc/nginx/nginx.conf ## 修改Dockerfile 檔案: vim Dockerfile # # docker web images FROM centos:latest RUN yum install epel-release -y RUN yum install nginx -y && rm -rf /usr/share/nginx/html/* ADD code.tar.gz /usr/share/nginx/html/ EXPOSE 80 443 8080 CMD ["/usr/sbin/nginx","-g","daemon off;"] ## 沒有新增環境變數進去 只能寫全路徑 ## 構建映象: docker build -t nginx:v2 . ## 生成容器: docker run -ti --rm -p 80:80 nginx:v2 bash ## 訪問: curl http://IP ......檢視內容即可
docker build scripts:
#!/bin/bash TAG=$1 docker build -t nginx:$TAG . ### 上傳harbor: #docker push ........ ### 執行指令碼: 1 ) sh docker_build.sh 20200715 2 ) docker images REPOSITORY TAG IMAGE ID CREATED SIZE nginx 20200715 dd0aea4c4b95 3 days ago 333MB