Docker常见配置实验

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

复制代码
1、拉取mysql5.6与owncloud的镜像
docker pull mysql:5.6
docker pull mysql:5.6
2、生成容器实例,构建个人网盘
docker run -d --name mydb1 --env MYSQL_ROOT_PASSWORD=123456 mysql:5.6
docker run -d --name owncloudv1 --link mydb1:mydb1 -p 88:80 owncloud:latest

2、安装搭建私有仓库 Harbor

复制代码
1、安装docker-compose环境(在官网下载)
mv docker-compose-linux-x86_64 /usr/local/bin/docker-compose 
chmod +x /usr/local/bin/docker-compose
测试:检查版本 
docker-compose version
  Docker Compose version v2.20.3 # 出现这种就是安装成功

2、解压harbor包
tar xf harbor-offline-installer-v2.8.4.tgz -C /usr/local/

3、切换目录,修改配置文件
cd /usr/local/harbor/
cp harbor.yml.tmpl harbor.yml # 备份harbor文件
hostnamectl set-hostname harbor.openlab.cn # 修改主机名
cat harbor.yml
修改过的内容如下:
# Configuration file of Harbor

# The IP address or hostname to access admin UI and registry service.
# DO NOT use localhost or 127.0.0.1, because Harbor needs to be accessed by external clients.
hostname: harbor.openlab.cn

# http related config
http:
  # port for http, default is 80. If https enabled, this port will redirect to https port
  port: 80

# https related config
#https:
  # https port for harbor, default is 443
 # port: 443
  # The path of cert and key files for nginx
 # certificate: /your/certificate/path
 # private_key: /your/private/key/path

4、使用脚本启动
./install.sh

5、如果想要使用域名访问的话,记得修改hosts文件

3、编写Dockerfile制作Web应用系统nginx镜像,生成镜像nginx:v1.1,并推送其到私有仓库。具体要求如下:

复制代码
1、先创建独立目录,方便进行dockerfile制作镜像
mkdir nginx
mkdir -p /usr/share/nginx/
cd nginx
echo "hello,world" > index.html
vim Dockerfile

2、接下来实现题目要求(以下为Dockerfile中编写)
(1)基于centos基础镜像;
FROM centos:7
(2)指定作者信息;
MAINTAINER "tjy <20020219@126.com>
(3)安装nginx服务,将提供的dest目录(提供默认主页index.html)传到镜像内,并将dest目录内的前端文件复制到nginx的工作目录;
ADD http://nginx.org/download/nginx-1.15.8.tar.gz /usr/local/src/
COPY index.html /usr/share/nginx/
(4)暴露80端口;
EXPOSE 80
(5)设置服务自启动。
CMD ["/usr/sbin/nginx","-g","daemon off;"]

3、验证镜像。
docker build -t nginx:v1.1 ./
docker images | grep nginx  # 出现以下即为镜像制作成功
nginx                           v1.1      b570565e29c7   31 seconds ago   205MB

4、提交镜像到自己的私人仓库(此处使用harbor仓库)
docker login 192.168.134.141  # 登录harbor
docker tag nginx:v1.1 192.168.134.141/library/nginx:v1.1 # 打标签
docker push 192.168.134.141/library/nginx:v1.1  # 上传

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

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

复制代码
1、同样的,先创建一个独立的目录
mkdir lamp
cd lamp
vim Dockerfile

2、编写文件(Dockerfile)
(1)基于centos:6基础镜像;
 FROM centos:6
(2)指定作者信息;
MAINTAINER "mysql <mysql@163.com>"
(3)安装httpd、mysql、mysql-server、php、php-mysql、php-gd;
 ENV WEB_DOC_ROOT="/data/web/html"
RUN yum install -y httpd mariadb-server php php-msysql php-gd
(4)暴露80和3306端口; 
EXPOSE 80/tcp
EXPOSE 3306/tcp
(5)设置服务自启动。 
CMD /bin/httpd -f -h ${WEB_DOC_ROOT}

3、验证镜像。
docker build -t lamp:v1.1 .
docker images | grep lamp
192.168.134.141/test/lamp       v1.1      89cf7f08fa6a   6 minutes ago    633MB

4、提交镜像到远程仓库(依旧采用harbor)
docker tag lamp:v1.1 192.168.134.141/test/lamp:v1.1
docker push 192.168.134.141/test/lamp:v1.1
相关推荐
小钻风33661 分钟前
Docker入门基础知识(一)
运维·docker·容器
小钻风336615 分钟前
Docker入门基础知识(二)
运维·docker·容器
深圳市恒讯科技20 分钟前
2026新加坡服务器配置全攻略:SSL证书、硬件防火墙与CDN加速
运维·服务器·ssl
回忆是昨天里的海23 分钟前
k8s部署的微服务动态扩容
java·运维·kubernetes
野猪佩挤1 小时前
Jenkins动态Salve调度其他集群Docker in Docker
运维·docker·jenkins
乾元1 小时前
下一代检测:基于自编码器(Autoencoder)的异常流量检测
运维·网络·人工智能·深度学习·安全·安全架构
GHL2842710901 小时前
TeamTalk-msg_server学习
运维·服务器·c++·学习
咩咩不吃草1 小时前
Linux环境下MySQL的安装与使用与Navicat
linux·运维·数据库·mysql·navicat
oh,huoyuyan1 小时前
火语言 RPA:批量删除多个 TXT 文件指定关键词的自动化案例
运维·自动化·rpa
薛定谔的悦1 小时前
体验使用Cursor自动化编程
运维·自动化