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
相关推荐
Sarapines Programmer14 分钟前
【Docker】Windows 安装 Docker 简明指南
运维·docker·容器
cnnews25 分钟前
手机通过Termux安装unbuntu,开启SSH
linux·运维·ubuntu·ssh
wwj888wwj1 小时前
mydumper备份数据库以及还原
linux·运维·服务器
竹之却2 小时前
如何使用 SakuraFrp 做内网穿透
运维·服务器·网络·frp·内网穿透·sakurafrp
SPC的存折2 小时前
3、Ansible之playbook模块大全
linux·运维·网络·python
万象.3 小时前
docker镜像操作实操
运维·docker·容器
徐子元竟然被占了!!3 小时前
DNS-特殊域名
运维
CDN3603 小时前
CDN 缓存不生效 / 内容不更新?7 种原因 + 一键刷新方案
运维·网络安全·缓存
野木香3 小时前
fnm在win10下安装配置
运维·学习
wydaicls4 小时前
什么时候触发负载均衡(kernel 6.12)
运维·负载均衡