高级运维day7-练习

**
1、使用mysql:5.6和 owncloud 镜像,构建一个个人网盘。
2、安装搭建私有仓库 Harbor
3、编写Dockerfile制作Web应用系统nginx镜像,生成镜像nginx:v1.1,并推送其到私有仓库。具体要求如下:
(1)基于centos基础镜像;
(2)指定作者信息;
(3)安装nginx服务,将提供的dest目录(提供默认主页index.html)传到镜像内,并将dest目录内的前端文件复制到nginx的工作目录;
(4)暴露80端口;
(5)设置服务自启动。
(6)验证镜像。
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、使用mysql:5.6和 owncloud 镜像,构建一个个人网盘。

下载mysql:5.6和owncloud镜像

[root@sql2 ~]# docker pull mysql:5.6
[root@sql2 ~]# docker pull owncloud

创建启动mysql:5.6和owncloud容器

[root@sql2 ~]# docker run -itd --name mysql --env MYSQL_ROOT_PASSWORD=123456 mysql:5.6
[root@sql2 ~]# docker run -itd -p 80:80 --name owncloud --link mysql:mysql owncloud

在浏览器中输入网盘服务器的IP地址,进行账号注册

2、安装搭建私有仓库 Harbor

下载Harbor安装包并解压,修改配置文件

[root@sql2 ~]# tar xf harbor-offline-installer-v2.8.4.tgz
[root@sql2 ~]# cd harbor/
[root@sql2 harbor]# cp harbor.yml.tmpl harbor.yml

下载docker-compose插件

[root@localhost harbor]#curl -L "https://github.com/docker/compose/releases/download/1.24.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

赋予该插件执行权限

[root@localhost harbor]# chmod +x /usr/local/bin/docker-compose
[root@sql2 harbor]# vim harbor.yml
192.168.27.135:22

#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: 192.168.27.135

# 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
## Uncomment following will enable tls communication between all harbor components
[root@sql2 harbor]# ./install.sh

在浏览器输入hostname和指定的端口号
默认账号为admin、密码为Harbor12345

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

(1)基于centos基础镜像;
拉取centos镜像

[root@localhost ~]# docker pull centos:7

(2)指定作者信息;

[root@localhost ~]# mkdir /centos:7
[root@localhost ~]# cd /centos
[root@localhost centos]# touch index.html
[root@localhost centos]# echo 'hello nginx' > index.html
[root@localhost centos]# vim Dockerfile
FROM centos
MAINTAINER "haha <haha@163.com>"

(3)安装nginx服务,将提供的dest目录(提供默认主页index.html)传到镜像内,并将dest目录内的前端文件复制到nginx的工作目录;

RUN yum install wget -y && cd /etc/yum.repos.d/ && rm -rf ./* && \wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo && \wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
RUN yum install -y nginx
COPY index.html /usr/share/nginx/html/

(4)暴露80端口;
EXPOSE 80
(5)设置服务自启动。

FROM centos:7
MAINTAINER "sj <sj163,com>
RUN yum install wget -y && cd /etc/yum.repos,d/ && rm -rf ./* && \
	wget -0 /etc/yum,repos,d/Cent0S-Base, repo http://mirrors,aliyun,com/repo/Centos-7.repo && \
	wget -0 /etc/yum,repos,d/epel, repo http://mirrors,aliyun,com/repo/epel-7.repo
RUN yum install -y nginx
COPY index.html /usr/share/nginx/html/
EXPOSE 80
CMD ["/usr/sbin/nqinx" ,“-q","daemon off:"]

(6)验证镜像。

[root@localhost centos]# docker build -t nginx:v1 .
[root@localhost centos]# docker run -p 8080:80 --name ng nginx:v1

[rootalocalhost centos]# dockerbuildt nginx:v1
Sending build context to Docker daemon		971.8kB
Step 1/7 : FROM centos:7
	---> eeb6ee3f44bd
Step 2/7 : MAINTAINER “haha <haha163.com>"
	---> Using cache
	--> e3e86162387a
Step 3/7 : RUN yum install wget -y && cd /etc/yum.repos.d/ && rm -rf ./* 66			wget -0 /etc/yum.repos
repo http://mirrors .aliyun.com/repo/Centos -7.repo &&		wget -0 /etc/yum.repos .d/epel .repo http://m;
om/repo/epel-7.repo
	--> Using cache
	--> becbc9a278cd
Step 4/7 : RUN yum install -y nginx
	---> Using cache
	---> 508012607f67
Step 5/7 : COPY index.html /usr/share/nginx/html
	--> 8ebe96420e71
Step 6/7 : EXPOSE 80
	--> Running in 8bcb61788c28
Removing intermediate container 8bcb61788c28--> 8c0033f67ae7
Step 7/7 : CMD ["/usr/sbin/nginx","-g","daemon off;"]
	--> Running in fblf6a047276
Removing intermediate container fblf6a047276
	---> 883f27e5b91f
4、Dockerfile快速搭建自己专属的LAMP环境,生成镜像lamp:v1.1,并推送到私有仓库。具体要求如下:

(1)基于centos:6基础镜像;

[root@localhost ~]# mkdir lamp
[root@localhost ~]# cd lamp/
[root@localhost lamp]# docker pull centos:6

(2)指定作者信息;

FROM centos:6 MAINTAINER “lan lan@163.com”

(3)安装httpd、mysql、mysql-server、php、php-mysql、php-gd;

RUN yum install wget -y && cd /etc/yum.repos.d/ && rm -rf ./* && \wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo && \wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo
RUN yum install -y httpd mysql mysql-server php php-mysql php-gd
RUN echo "this is html" > /var/www/html/index.html

(4)暴露80和3306端口;

EXPOSE 80 EXPOSE 3306

(5)设置服务自启动。

CMD [“httpd”,“-DFOREGOUND;”]

FROM centos:6
MAINTAINER "ishaniia <lishaniia163.com
ADD CentOS-Base. repo /etc/yum.repos .d/RUN yum install -y httpd mysql mysql-server php php-mysql php-gd &&yum clean all & yum makecacheEXPOSE 80EXPOSE 3306CMD["sh""-c", "service httpd start Ss service mysqld start 6s tail -f /var/log

(6)验证镜像。

[root@localhost lamp]# docker build -t lamp:v1.1 .
[root@localhost lamp]# docker run -p 8070:80  --name lp lamp:v1.1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值