【docker】- 自制lnmp鏡像

1、拉取一個centos最新的image

docker image pull centos

默認會拉取latest的centos

2、運行這個image,生成一個容器實例,並進入

docker run -it centos:latest /bin/bash

/bin/bash : 容器運行之後用/bin/bash 這個shell來進行操作

參數 -i  : – --interactive 即使沒有連接也會保持STDIN打開狀態,如果你想輸入任何命令

的話,你需要這個

參數 -t  : – --tty 分配一個僞TTY(各種類型的終端設備),一個連接用戶的“終端”與標準輸入和標準輸出的僞終端

-d : 後臺運行容器,並返回容器ID; 

3、一鍵安裝lnmp

wget http://soft.vpser.net/lnmp/lnmp1.6.tar.gz -cO lnmp1.6.tar.gz && tar zxf lnmp1.6.tar.gz && cd lnmp1.6 && ./install.sh lnmp

4、編寫啓動命令

touch /bin/startup.sh vi /bin/startup.sh

寫入以下命令:

#!/bin/sh /etc/init.d/mysql start /etc/init.d/php-fpm start /etc/init.d/nginx start #dead loop while ((1)) do sleep 1h done

5、清除下載軟件包、cache等,減少鏡像大小

yum clean all

6、退出容器實例

exit

7、基於當前容器生成新image鏡像

docker commit [CONTAINER_ID] centos:lnmp

可以看到生成了一個新的鏡像,但是size很大

8、基於新創建的鏡像生成一個容器實例

docker run -u root -d -p 8888:80 -v /var/www/html:/var/www/html centos:lnmp /bin/startup.sh

9、重命名一個image鏡像的tag

docker tag IMAGEID(鏡像id) REPOSITORY:TAG(倉庫:標籤)

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章