当前位置: 首页 > news >正文

Docker容器学习:搭建自己专属的LAMP环境

目录

编写Dockerfile

1.文件内容需求:

2.值得注意的是centos6官方源已下线,所以需要切换centos-vault源!

3.Dockerfile内容 

4.进入到 lamp 开始构建镜像

推送镜像到私有仓库

        1.把要上传的镜像打上合适的标签

        2.登录harbor仓库

        3.上传镜像


LAMP 环境结合了 Linux、Apache、MySQL 和 PHP,提供了一个稳定、可靠、安全和高效的平台,用于创建和管理 Web 应用程序的开源开发平台。

编写Dockerfile

1.文件内容需求:

  1. 基于centos:6基础镜像。
  2. 指定作者信息。
  3. 安装httpd、mysql、mysql-server、php、php-mysql、php-gd。
  4. 暴露80和3306端口。
  5. 设置服务自启动。
  6. 验证镜像。

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 

完成! 

http://www.lryc.cn/news/141416.html

相关文章:

  • 问道管理:沪指弱势震荡跌0.38%,金融、地产等板块走弱,算力概念等活跃
  • OpenWrt package - BuildPackage
  • C++三体星战小游戏
  • 【zip密码】修改zip压缩包密码
  • 小小讲一下Linux基本命令
  • Python数据容器(列表list、元组tuple、字符串str、字典dict、集合set)详解
  • 2023高教社杯数学建模思路 - 复盘:人力资源安排的最优化模型
  • Linux 计算机网络基础概论
  • 深入理解 C++ 中的 std::cref、std::ref 和 std::reference_wrapper
  • 在其他python环境中使用jupyter notebook
  • 计算机网络-笔记-第二章-计算机网络概述
  • Hive字符串数组json类型取某字段再列转行
  • ElementUI Table 翻页缓存数据
  • 使用 AutoGPTQ 和 transformers 让大语言模型更轻量化
  • AUTOSAR规范与ECU软件开发(实践篇)6.5 BswM模块概念与配置方法介绍
  • 1.1 VMware Workstation与Kali的安装和配置1
  • DDR与PCIe:高性能SoC的双引擎
  • C#_特性反射详解
  • 【跟小嘉学 Rust 编程】十三、函数式语言特性:迭代器和闭包
  • 时间复杂度和空间复杂度
  • mac docker 卡住解决
  • linux/centos zookeeper 使用记录
  • 用wireshark流量分析的四个案例
  • Oracle 时区详解
  • 仿mudou高性能高并发服务器
  • vue权限管理——菜单权限设置
  • 【LeetCode】228.汇总区间
  • Qt快速学习(二)--QMainWindow,对话框,布局管理器,常用控件
  • 群晖DSM下套件及系统网页服务器ssl证书自动更新
  • 【Flink】Flink架构及组件