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
相关推荐
彩虹糖_haha10 分钟前
Linux高并发服务器开发 第五天(压缩解压缩/vim编辑器/查找替换/分屏操作/vim的配置)
linux·运维·服务器
旺仔学IT10 分钟前
Centos7中使用yum命令时候报错 “Could not resolve host: mirrorlist.centos.org; 未知的错误“
linux·运维·centos
qq_433618441 小时前
shell 编程(五)
linux·运维·服务器
VVVVWeiYee2 小时前
项目2路由交换
运维·服务器·网络·网络协议·信息与通信
lifeng43213 小时前
Jenkins集成部署(图文教程、超级详细)
运维·jenkins
白手小弟3 小时前
python wxauto库实现微信自动化发送信息、回复、添加好友等
运维·自动化
ii_best3 小时前
ios按键精灵自动化的脚本教程:自动点赞功能的实现
运维·ios·自动化
3DVisionary3 小时前
数字图像相关DIC技术用于机械臂自动化焊接全场变形测量
运维·数码相机·自动化·焊接变形实验·数字图像相关dic技术·自动化焊接全场变形测量·非接触高精度环境适应性全场测量
IT机器猫4 小时前
Docker完整技术汇总
运维·docker·容器
无所不在的物质4 小时前
Jenkins基础教程
运维·云原生·自动化·jenkins