zl程序教程

您现在的位置是:首页 >  其他

当前栏目

dockerfile生产案例-基于alpine 基础镜像制作nginx镜像

案例基础镜像Nginx 基于 制作 生产 Dockerfile
2023-06-13 09:15:42 时间
[root@ubuntu1804 ~]#docker pull alpine [root@ubuntu1804 ~]#docker tag alpine alpine:3.11 [root@ubuntu1804 ~]#docker images [root@ubuntu1804 ~]#docker images REPOSITORY TAG IMAGE ID CREATED SIZE alpine 3.11 e7d92cdc71fe 11 days ago 5.59MB alpine latest e7d92cdc71fe 11 days ago 5.59MB #准备相关文件和dockfile [root@ubuntu1804 ~]#cd /data/dockerfile/system/alpine [root@ubuntu1804 alpine]#cat repositories http://mirrors.aliyun.com/alpine/v3.11/main http://mirrors.aliyun.com/alpine/v3.11/community [root@ubuntu1804 alpine]#cat Dockerfile FROM alpine:3.11 LABEL maintainer= wangxiaochun root@wangxiaochun.com COPY repositories /etc/apk/repositories RUN apk update apk add iotop gcc libgcc libc-dev libcurl libc-utils pcre-dev zlib-dev libnfs make pcre pcre2 zip unzip net-tools pstree wget libevent libevent-dev iproute2 [root@ubuntu1804 alpine]#cat build.sh #!/bin/bash docker build -t alpine-base:3.11 . [root@ubuntu1804 alpine]#bash build.sh [root@ubuntu1804 alpine]#docker images alp* REPOSITORY TAG IMAGE ID CREATED SIZE alpine-base 3.11 b162eecf4da9 5 minutes ago 182MB alpine 3.11 e7d92cdc71fe 11 days ago 5.59MB alpine latest e7d92cdc71fe 11 days ago 5.59MB 制作基于alpine自定义镜像的nginx镜像
#准备相关文件

[root@ubuntu1804 ~]#mkdir /data/dockerfile/web/nginx/1.16.1-alpine/

[root@ubuntu1804 ~]#cd /data/dockerfile/web/nginx/1.16.1-alpine/

[root@ubuntu1804 1.16.1-alpine]#wget http://nginx.org/download/nginx-1.16.1.tar.gz

[root@ubuntu1804 1.16.1-alpine]#echo Test Page based nginx-alpine index.html

[root@ubuntu1804 1.16.1-alpine]#cp ../1.16.1-centos7/nginx.conf .

[root@ubuntu1804 1.16.1-alpine]#cat nginx.conf

user nginx;

worker_processes 1;

daemon off;

location / {

 root /data/nginx/html;

#编定Dockerfile文件

[root@ubuntu1804 1.16.1-alpine]#vim Dockerfile 

[root@ubuntu1804 1.16.1-alpine]#cat Dockerfile

FROM alpine-base:3.11

LABEL maintainer= wangxiaochun root@wangxiaochun.com 

ADD nginx-1.16.1.tar.gz /usr/local/src 

RUN cd /usr/local/src/nginx-1.16.1 ./configure --prefix=/apps/nginx make make install ln -s /apps/nginx/sbin/nginx /usr/bin/ 

RUN addgroup -g 2019 -S nginx adduser -s /sbin/nologin -S -D -u 2019 -G nginx nginx 

COPY nginx.conf /apps/nginx/conf/nginx.conf 

ADD index.html /data/nginx/html/index.html

RUN chown -R nginx.nginx /data/nginx/ /apps/nginx/

EXPOSE 80 443 

CMD [ nginx ] 

#构建镜像

[root@ubuntu1804 1.16.1-alpine]#vim build.sh

[root@ubuntu1804 1.16.1-alpine]#cat build.sh

#!/bin/bash

#********************************************************************

docker build -t nginx-alpine:1.16.1 .

[root@ubuntu1804 1.16.1-alpine]#ls

build.sh Dockerfile index.html nginx-1.16.1.tar.gz nginx.conf

[root@ubuntu1804 1.16.1-alpine]#docker images “*alpine*”

REPOSITORY TAG IMAGE ID CREATED SIZE

nginx-alpine 1.16.1 344ff9acf58b 13 seconds ago 211MB

alpine-base 3.11 b162eecf4da9 About an hour ago 182MB

alpine 3.11 e7d92cdc71fe 11 days ago 5.59MB

alpine latest e7d92cdc71fe 11 days ago 5.59MB

#生成容器测试镜像

[root@ubuntu1804 1.16.1-alpine]#docker run -d -p 80:80 nginx-alpine:1.16.1

1cb16e9fe6cd8e583a61c2718a92ce3031313bbf3656c2f85ac84d34ccfe7e0d

[root@ubuntu1804 1.16.1-alpine]#curl 127.0.0.1

Test Page based nginx-alpine

[root@ubuntu1804 1.16.1-alpine]#docker exec -it 1cb16e9fe6cd sh

/ # ps aux

PID USER TIME COMMAND

 1 root 0:00 nginx: master process nginx

 6 nginx 0:00 nginx: worker process

 7 root 0:00 sh

 12 root 0:00 ps aux

/ # ls /data/nginx/html/ -l

total 4

-rw-r--r-- 1 nginx nginx 29 Jan 29 11:08 index.html

/ # exit

[root@ubuntu1804 1.16.1-alpine]#

本文链接:http://www.yunweipai.com/34854.html

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/52670.html

centosDockernginxUbuntu 赞 (1)