目录
编写Dockerfile
1.文件内容需求:
2.值得注意的是centos6官方源已下线,所以需要切换centos-vault源!
3.Dockerfile内容
4.进入到 lamp 开始构建镜像
推送镜像到私有仓库
1.把要上传的镜像打上合适的标签
2.登录harbor仓库
3.上传镜像
LAMP 环境结合了 Linux、Apache、MySQL 和 PHP,提供了一个稳定、可靠、安全和高效的平台,用于创建和管理 Web 应用程序的开源开发平台。
编写Dockerfile
1.文件内容需求:
- 基于centos:6基础镜像。
- 指定作者信息。
- 安装httpd、mysql、mysql-server、php、php-mysql、php-gd。
- 暴露80和3306端口。
- 设置服务自启动。
- 验证镜像。
2.值得注意的是centos6官方源已下线,所以需要切换centos-vault源!
mkdir /dockerfile/lamp
cd /dockerfile/lamp
wget -O CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-6.10.repo
[root@node4 lamp]# ll
total 8
-rw-r--r-- 1 root root 2533 Aug 4 2022 CentOS-Base.repo
-rw-r--r-- 1 root root 620 Aug 20 21:15 Dockerfile
3.Dockerfile内容
[root@node4 lamp]# vim Dockerfile
# 基于centos:6基础镜像
FROM centos:6
# 指定作者信息
LABEL maintainer="Zly <1647082043@qq.com>"
# 将新的yum源复制到centos中
COPY CentOS-Base.repo /etc/yum.repos.d/
# 安装httpd,mysql,mysql-server,php,php-mysql,php-gd
RUN yum install httpd -y && \
yum install mysql mysql-server -y && \
yum install php php-mysql php-gd -y && \
yum clean all
# 暴露80和3306端口
EXPOSE 80 3306
# 验证镜像
RUN httpd -v && \
mysql --version && \
php -v
# 创建容器时启动httpd,mysql服务
CMD ["/bin/bash","-c","service httpd start && service mysqld start && tail -f /dev/null"]
4.进入到 lamp 开始构建镜像
docker build -t lamp-zly:v1.1 ./
查看有无构建成功
[root@node4 lamp]# docker images | grep lamp
lamp-zly v1.1 72bd268a5833 37 minutes ago 347MB
推送镜像到私有仓库
上一篇文章提到如何搭建自己的私有仓库harbor:Docker容器学习:搭建私有镜像仓库Harbor&操作_一路喝狗狗的博客-CSDN博客
1.把要上传的镜像打上合适的标签
[root@node4 lamp]# docker tag lamp-zly:v1.1 docker:80/demo/lamp-zly:v1.1
2.登录harbor仓库
[root@node4 harbor]# docker login docker:80
Username (admin): admin
Password:
Login Succeeded
3.上传镜像
[root@node4 lamp]# docker push docker:80/demo/lamp-zly:v1.1
完成!