docker 制作自定義的nginx鏡像


1、啟動一個centos基礎系統

[root@docker ~]# docker run -it --name mynginx centos /bin/bash
[root@a8882e2ef0d9 /]#

2、安裝wget,默認沒有的

[root@a8882e2ef0d9 /]# yum install -y wget

3、安裝nginx

[root@a8882e2ef0d9 /]# yum install -y nginx

4、修改配置

[root@a8882e2ef0d9 ~]# vim /etc/nginx/nginx.conf #修改參數
找到user nginx;,在他下面加上一行 daemon off;(禁止后台運行,docker不允許nginx后台運行)

也可以添加自己優化的一些參數,修改完成后記得nginx -t檢查下配置文件

5、啟動nginx

[root@a8882e2ef0d9 ~]# nginx  

正常情況下,此時進程是夯住的,所以另外打開一個ssh渠道提交一個新鏡像

docker commit -m "nginx images" mynginx nginx:v1

至此就可以了,可以啟動鏡像訪問端口測試

6、默認容器運行環境是root,現在一些公司為了安全起見,禁止容器內root環境,所以有這個需求的可以重做下鏡像

先編寫dockerfile

FROM nginx:v1
RUN chmod +s /usr/sbin/nginx
USER nginx
CMD ["/usr/sbin/nginx"]
docker build -t nginx:v2 .  

得到的新鏡像默認就是非root環境了

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM