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

docker进阶作业

一、使用mysql:5.6和 owncloud 镜像,构建一个个人网盘。

  1. 安装Docker:确保已在CentOS 7.5上安装了Docker。

  2. 拉取MySQL 5.6镜像:使用以下命令从Docker Hub上拉取MySQL 5.6镜像。

 docker pull mysql:5.6
  1. 运行MySQL容器:使用以下命令创建并运行一个MySQL容器。将my_mysql_container替换为您喜欢的容器名称,并设置合适的MySQL用户名和密码。

 docker run -d --name my_mysql_container -e MYSQL_ROOT_PASSWORD=your_root_password mysql:5.6
  1. 拉取ownCloud镜像:使用以下命令从Docker Hub上拉取ownCloud镜像。

 docker pull owncloud
  1. 运行ownCloud容器:使用以下命令创建并运行一个ownCloud容器。将my_owncloud_container替换为您喜欢的容器名称,并将MySQL容器的地址和凭据与命令中的值匹配。

 docker run -d --name my_owncloud_container -p 8080:80 --link my_mysql_container:mysql -e MYSQL_HOST=mysql -e MYSQL_DATABASE=owncloud_db -e MYSQL_USER=your_username -e MYSQL_PASSWORD=your_password owncloud
  1. 完成设置:打开浏览器,并在地址栏中输入http://localhost:8080,然后按照ownCloud的安装向导进行设置。

通过以上步骤,您将能够在CentOS 7.5上使用MySQL 5.6和ownCloud镜像构建个人网盘。

注意:

  • 在命令中,请将your_root_password替换为适当的MySQL根密码。

  • 在ownCloud容器的命令中,请将your_usernameyour_password替换为适当的MySQL用户名和密码。

二、安装搭建私有仓库 Harbor

以下是在CentOS 7.5上安装和搭建私有仓库Harbor的详细步骤:

  1. 安装Docker:

    • 更新系统软件包:

       sudo yum update -y
    • 安装Docker的依赖项:

       sudo yum install -y yum-utils device-mapper-persistent-data lvm2
    • 添加Docker的官方仓库:

       sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
    • 安装Docker CE(社区版):

       sudo yum install -y docker-ce
    • 启动Docker服务:

       sudo systemctl start docker
    • 设置Docker服务开机自启动:

       sudo systemctl enable docker
  2. 安装Docker Compose:

    • 下载Docker Compose二进制文件:

       sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
    • 添加可执行权限:

       sudo chmod +x /usr/local/bin/docker-compose
  3. 安装和配置Harbor:

    • 下载Harbor离线安装文件包,根据您的需求选择合适的版本:Releases · goharbor/harbor · GitHub

    • 解压Harbor离线安装文件包:

       tar xvf harbor-offline-installer-<版本号>.tgzcd harbor
    • 编辑Harbor配置文件(harbor.yml):

       vi harbor.yml
    • 可以根据需要修改配置文件中的参数,例如hostnamehttphttps等。

    • 运行Harbor安装脚本:

       sudo ./install.sh

    安装过程可能需要几分钟时间。

  4. 配置并启动Harbor服务:

    • 打开Harbor配置文件(/etc/docker/daemon.json),添加以下内容以允许不受信任的证书:

       {"insecure-registries": ["your_harbor_url"]}
    • 重新加载Docker配置:

       sudo systemctl daemon-reload
    • 重启Docker服务:

       sudo systemctl restart docker
    • 启动Harbor服务:

       sudo docker-compose up -d
  5. 验证Harbor安装是否成功:

    • 打开浏览器,访问Harbor的URL(根据配置的hostname指定),例如:http://your_harbor_url

    • 如果成功打开Harbor的Web界面,则表示安装成功。

如需进一步了解Harbor的使用和配置,请参考Harbor的官方文档(Harbor)。

三、编写Dockerfile制作Web应用系统nginx镜像,生成镜像nginx:v1.1,并推送其到私有仓库。

需求:

 (1)基于centos基础镜像; (2)指定作者信息; (3)安装nginx服务,将提供的dest目录(提供默认主页index.html)传到镜像内,并将dest目录内的前端文件复制到nginx的工作目录; (4)暴露80端口; (5)设置服务自启动。 (6)验证镜像。 

以下是满足要求的Dockerfile内容来制作nginx镜像:

 FROM centosLABEL maintainer="Your Name <youremail@example.com>"​# 安装nginx服务RUN yum -y update && yum install -y nginx​# 复制并设置nginx配置文件COPY nginx.conf /etc/nginx/nginx.conf​# 复制前端文件到nginx工作目录COPY dest /usr/share/nginx/html​# 暴露80端口EXPOSE 80​# 设置服务自启动CMD ["nginx", "-g", "daemon off;"]

将上述Dockerfile放在一个目录下,并将要提供的dest目录和nginx.conf配置文件也放在同一目录下。

然后,使用以下命令构建并推送镜像到私有仓库:

 # 构建镜像docker build -t nginx:v1.1 .​# 标记镜像为私有仓库地址docker tag nginx:v1.1 your_harbor_url/nginx:v1.1​# 登录私有仓库docker login your_harbor_url​# 推送镜像到私有仓库docker push your_harbor_url/nginx:v1.1

确保将your_harbor_url替换为您的实际私有仓库地址。执行上述命令后,Docker将会构建nginx:v1.1镜像并推送到您的私有仓库。

要验证镜像是否正常工作,可以使用以下命令运行镜像并检查nginx是否正常启动:

 docker run -d -p 80:80 your_harbor_url/nginx:v1.1

然后通过浏览器访问http://localhost即可验证nginx是否成功运行并显示默认的index.html页面。

四、Dockerfile快速搭建自己专属的LAMP环境,生成镜像lamp:v1.1,并推送到私有仓库。

需求:

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

以下是满足要求的Dockerfile内容来快速搭建LAMP环境并创建镜像lamp:v1.1:

 FROM centos:6LABEL maintainer="Your Name <youremail@example.com>"​# 安装httpd、mysql、mysql-server、php、php-mysql、php-gdRUN yum -y update && \yum install -y httpd mysql mysql-server php php-mysql php-gd && \yum clean all​# 暴露80和3306端口EXPOSE 80 3306​# 设置服务自启动CMD ["/usr/sbin/httpd", "-D", "FOREGROUND"]

将上述Dockerfile放在一个目录下。

然后,使用以下命令构建并推送镜像到私有仓库:

 # 构建镜像docker build -t lamp:v1.1 .​# 标记镜像为私有仓库地址docker tag lamp:v1.1 your_harbor_url/lamp:v1.1​# 登录私有仓库docker login your_harbor_url​# 推送镜像到私有仓库docker push your_harbor_url/lamp:v1.1

确保将your_harbor_url替换为您的实际私有仓库地址。执行上述命令后,Docker将会构建lamp:v1.1镜像并推送到您的私有仓库。

验证镜像是否正常工作的方法是创建一个容器并运行它,然后使用浏览器或其他工具验证LAMP环境是否按预期运行。

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

相关文章:

  • HTML+JavaScript+CSS DIY 分隔条splitter
  • Oracle-day5:新增、复制建表、表结构、表数据、删除
  • Scratch 画画的技巧
  • 国际版阿里云/腾讯云:阿里弹性云手机正式公测
  • 服务器数据恢复- RAID5出现故障后恢复数据和操作系统的案例
  • Vue3实现可视化拖拽标签小程序
  • SSM 前端使用AJAX方式,fromdata文件格式上传二进制流文件
  • LeetCode-455-分发饼干-贪心算法
  • 新版 Next.js 从入门到入土
  • OpenCV(十):图像缩放、翻转、拼接的介绍与使用
  • C++ 学习之 构造函数 和 析构函数
  • 加快 MySQL 数据迁移
  • CANalyzer panel
  • 延迟队列的理解与使用
  • jQuery成功之路——jQuery的DOM操作简单易懂
  • C++ 学习系列 -- 智能指针 make_shared 与 make_unique
  • 贝叶斯神经网络 - 捕捉现实世界的不确定性
  • games101作业1
  • LeetCode 面试题 02.08. 环路检测
  • 【Linux】线程安全-生产者消费者模型
  • 优化(2) 2023/09/03
  • Swap and Reverse 题解
  • 单元测试:优雅编写Kotlin单元测试
  • 深度学习入门教学——卷积神经网络CNN
  • 【MySQL】MySQL系统变量(system variables)列表(mysqld --verbose --help的结果例)
  • Python学习之四 数据输入与输出
  • VBA技术资料MF51:VBA_在Excel中突出显示唯一值
  • Mqtt学习笔记--交叉编译移植(1)
  • Gateway的服务网关
  • 信息化发展18