首頁 > 學院 > 綜合知識 > 正文

Docker二所鏡像創作

2022-07-28 22:41:36
字體:
來源:轉載
供稿:網友
      Docker二所鏡像制作:

1、dockerfile 里不能有交互式命令。
 
     FROM centos:6.9  加載鏡像
 
     RUN curl -o /etc/yum.repos.d/CentOS-Base.repo  http://mirrors.aliyun.com/repo/Centos-6.repo   //base源優化
 
      RUN curl -o /etc/yum.repos.d/epel.repo   
 
// EPEL (Extra Packages for Enterprise Linux)(http://fedoraproject.org/wiki/EPEL) 是由 Fedora 社區打造,為 RHEL 及衍生發行版如 CentOS、Scientific Linux 等提供高質量軟件包的項目.
 
     RUN  (類似docker run的操作)啟動一個臨時容器,產生文件變化,提交臨時鏡像,保留變化,刪除臨時容器。
 
      RUN  基于上面的臨時鏡像,啟動一個臨時容器,產生文件變化,再次 提交臨時鏡像,保留變化,刪除臨時容器。直到最有一個臨時鏡像保留下來。
 
     RUN echo "192.169.11.2  mirrors.aliyun.com" >>/etc/hosts    劫持host,每次啟動容器,hosts都會被自動改為容器名,要生效,這個RUN必須是 最后一條RUN,或把所有RUN通過&&  / 連成一條命令,這樣作為最后一個臨時鏡像,會保留下來。
 
      ADD run.sh /run.sh    //這個不會啟動臨時容器,所以不會改hosts。 如果是URL或壓縮包,會自動下載或自動解壓
 
      RUN 775 /run.sh
 
      CMD ["/bin/bash","/run.sh"]
 
2、docker image prune   刪除沒有名字也沒有版本的鏡像,怎么會產生名字和TAG為<none>的鏡像?<----docker image rm -f  正在運行的鏡像;或dockerfile構建一半的時候Ctrl+c也會產生。
 
3、 docker run -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7
 
docker run -p 3306:3306 --name mysql / -v /usr/local/docker/mysql/conf:/etc/mysql / -v /usr/local/docker/mysql/logs:/var/log/mysql / -v /usr/local/docker/mysql/data:/var/lib/mysql / -e MYSQL_ROOT_PASSWORD=123456 / -d mysql:5.7
 
        -v:主機和容器的目錄映射關系,":"前為主機目錄,之后為容器目錄
 
        通過ENV環境變量 MYSQL_ROOT_PASSWORD,來設置MySQL初始密碼,在 docker run 通過 -e MYSQL_ROOT_PASSWORD=111111可以設定該容器的運行時密碼。
 
4、使用ADD,tar包下載到本地,使用ADD自動解壓加到鏡像中,copy則不會解壓。
 
5、ADD yum install openssh-server -y   //在腳本service sshd start,
 
     ssh root@192.168.1.1  -p 22   //因為 沒有密碼還是不能通過ssh登錄,需要
 
     echo "123456" | passwd --stdin root   // 更新用戶密碼信息,適用于shell腳本,非交互式設置root密碼,或使用腳本變量$1用戶設置密碼。失敗 問題原因之一就是出在了密碼中有"!"。繼續測試echo命令和"!",知道了"!"在echo中是有不同意義的,如果要輸出"!",就需要"/"來轉譯。
 
6、 docker容器開啟多個服務,最簡單的就是把多個命令放到一個啟動腳本里面,另外就是使用進程管理工具,例如使用supervisor來管理容器中的多個進程,dockerfile中CMD ["/usr/bin/supervisord"],通過修改/etc/supervisor/conf.d/supervisord.conf配置文件啟動多個服務;

(編輯:錯新網)

上一篇:Toolkit安置

下一篇:返回列表

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
金玫玫床戏