docker作业

目录

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

1.1启动镜像

1.2启动cloud镜像

1.3浏览器访问

​编辑

[2、安装搭建私有仓库 Harbor](#2、安装搭建私有仓库 Harbor)

2.1下载docker-compose

[2.2 磁盘挂载,保存harbor](#2.2 磁盘挂载,保存harbor)

[2.3 修改配置文件](#2.3 修改配置文件)

2.4安装

2.5浏览器访问

[2.6 新建一个项目](#2.6 新建一个项目)

2.7修改docker配置,添加harbor为信任地址

​编辑

​编辑

2.8将要上传的镜像打上标签

2.9上传镜像

​编辑

2.10web界面查看

拉取镜像

1.先将之前的镜像删除

拉取​编辑

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

具体要求如下:

创建Dockerfile

创建镜像

登录

查看web界面​编辑

​编辑

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

具体要求如下:

编写Dockerfile

start.sh

登录

打标签

上传镜像


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

1.1启动镜像

1.2启动cloud镜像

1.3浏览器访问

IP地址:8080

设置账号密码

2、安装搭建私有仓库 Harbor

2.1下载docker-compose

2.2 磁盘挂载,保存harbor

2.3 修改配置文件

2.4安装

2.5浏览器访问

用户名和密码在harbor.yml中有记录

用户名:admin

密码: Harbor12345

2.6 新建一个项目

2.7修改docker配置,添加harbor为信任地址

2.8将要上传的镜像打上标签

root@kubernetes-master harbor# docker pull busybox:latest 拉取镜像

latest: Pulling from library/busybox

3f4d90098f5b: Pull complete

Digest: sha256:3fbc632167424a6d997e74f52b878d7cc478225cffac6bc977eedfe51c7f4e79

Status: Downloaded newer image for busybox:latest

docker.io/library/busybox:latest

docker tag busybox:latest 192.168.96.134:80/demo/busybox:v0.1 打标签

2.9上传镜像

2.10web界面查看

拉取镜像

1.先将之前的镜像删除

拉取

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

具体要求如下:

(1)基于centos基础镜像;

(2)指定作者信息;

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

(4)暴露80端口;

(5)设置服务自启动。

(6)验证镜像。

创建Dockerfile

root@kubernetes-master nginx# cat Dockerfile

FROM centos:7

MAINTAINER "WWW"

RUN yum install -y http://nginx.org/packages/centos/7/x86_64/RPMS/nginx-1.24.0-1.el7.ngx.x86_64.rpm

COPY dest/index.html /usr/share/nginx/html/

EXPOSE 80/tcp

ENTRYPOINT "nginx", "-g", "daemon off;"

创建镜像

登录

推送 报错:原因没有打标签,找不到

root@kubernetes-master nginx# docker push 192.168.96.134:80/demo/centos7:v1.1

The push refers to repository 192.168.96.134:80/demo/centos7

An image does not exist locally with the tag: 192.168.96.134:80/demo/centos7

解决办法:

root@kubernetes-master nginx# docker tag centos:latest 192.168.96.134:80/demo/centos7:v1.1

root@kubernetes-master nginx# docker push 192.168.96.134:80/demo/centos7:v1.1

The push refers to repository 192.168.96.134:80/demo/centos7

74ddd0ec08fa: Pushed

v1.1: digest: sha256:a1801b843b1bfaf77c501e7a6d3f709401a1e0c83863037fa3aab063a7fdb9dc size: 529

查看web界面

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)验证镜像。

编写Dockerfile

FROM centos:7

MAINTAINER "FOX"

COPY mysql.repo /etc/yum.repos.d/

COPY epel.repo /etc.yum.repos.d/

RUN yum clean all && yum makecache && yum install -y mysql-server php php-gd php-mysql httpd && \

sed -i "s/#ServerName www.example.com:80/ServerName www.example.com:80/" /etc/httpd/conf/httpd.conf && \

echo "<?php phpinfo(); ?>" > /var/www/html/index.php

EXPOSE 80/tcp 3306/tcp

COPY start.sh /opt/

RUN chmod +x /opt/start.sh

CMD "/opt/start.sh"

start.sh

#!/bin/bash

/usr/sbin/httpd &

/usr/sbin/mysqld --user=mysql &

tail -f /dev/null

登录

打标签

docker tag lamp:v1.1 192.168.96.134:80/demo/lamp:v1.1

上传镜像

root@kubernetes-master lamp# docker push 192.168.96.134/demo/lamp:v1.1

The push refers to repository 192.168.96.134/demo/lamp

cc32351b5cc2: Pushed

516365b20893: Pushed

d0be8416d3fd: Pushed

acedef93300c: Pushed

174f56854903: Mounted from demo/centos7

v1.1: digest: sha256:74d3d51a999ec3234febc5788018a8f46b58b02461f5e82b8e89268f3bb7b570 size: 1363

相关推荐
程序员-Benothing8 小时前
Vim编辑器从入门到精通:模式、快捷键、配置、插件
linux·运维·服务器
m0_646429978 小时前
Docker 完整核心知识点总结(超通俗易懂版)
运维·docker·容器
亚川楼宇自控系统数据中心厂家8 小时前
IBMS 集成管理系统:如何打通楼宇自控实现建筑一体化管控
运维
迪康Defender8 小时前
终端安全审批体系设计:如何平衡安全管控与业务连续性
运维·服务器·安全·运维开发·学习方法·业界资讯·远程工作
luo_guibin10 小时前
Linux系统下OpenSSL升级全流程,新旧版本切换
linux·运维·服务器
71777710 小时前
支持混合云的 DevOps 平台有哪些:主流方案对比与选型指南
运维·devops
看着博客敲代码10 小时前
No space left on device:服务器被 SSH 爆破到日志写满的完整排查与止血
linux·运维·服务器·安全·ssh
编程序的员10 小时前
使用OpenTelemetry来监控Rust应用
运维·rust·monitoring·opentelemetry
实战派K8S&DB10 小时前
TDSQL 核心模块与进程体系
运维·数据库·分布式·sql·mysql
Rooting++10 小时前
用友打包的APP壳子怎么获取SHA1码?
运维·服务器