文章目录
题目要求
Dockerfile快速搭建自己专属的LAMP环境,生成镜像lamp:v1.1,并推送到私有仓库。具体要求如下:
- 基于centos:6基础镜像;
- 指定作者信息;
- 安装httpd、mysql、mysql-server、php、php-mysql、php-gd;
- 暴露80和3306端口;
- 设置服务自启动;
- 验证镜像。
一、编写Dockerfile
c
[root@redhat ~]# mkdir -p dockertest/test2
[root@redhat ~]#
[root@redhat ~]# cd dockertest/test2
[root@redhat test2]#
[root@redhat test2]# vim Dockfile
FROM centos:6
MAINTAINER "Tej <Tej@163.com>"
ENV WEB_DOC_ROOT="/data/web/html"
RUN yum install httpd mysql mysql-server php php-mysql php-gd -y
EXPOSE 80/tcp
EXPOSE 3306/tcp
CMD /bin/httpd -f -h ${WEB_DOC_ROOT}
二、构建镜像
c
[root@redhat test2]# docker build -t lamp:v1.1 ./
如果报错的话,就将centos6改为cente7,因为有些包 可能在6里面没有只有在7里面才会有
三、推送到私有仓库
先新建一个项目test2
c
[root@redhat test2]# docker tag lamp:v1.1 192.168.11.131/test2/lamp:v1.1
[root@redhat test2]# docker push 192.168.11.131/test2/lamp:v1.1
The push refers to repository [192.168.11.131/test2/lamp]
e54ca45b947d: Pushed
174f56854903: Pushed
v1.1: digest: sha256:c4fab0812ec0ab21dbf7a27293a6d44361c29056a0c3b569c7cccca2d5a46734 size: 742
然后就能看到推送的lamp了