Docker安装及简单镜像制作
2019-04-13 16:41
477 查看
本文章为《云计算》课程实验总结,使用CentOS7安装Docker并进行简单镜像制作。
注意:Docker要求CentOS系统的内核版本高于 3.10,可使用
uname -r查看系统内核。
1 Docker安装
(1)更新yum包
[code]yum update
(2)安装依赖包
yum-util提供
yum-config-manager功能,另外两个是
devicemapper驱动依赖。
[code]yum install -y yum-utils device-mapper-persistent-data lvm2
(3)设置yum
国内源,提升下载速度。
[code]yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
(4)安装Docker
①查看Docker仓库所有版本
[code]yum list docker-ce --showduplicates | sort -r
②选择版本安装
[code]yum install -y docker-ce-18.06.3.ce
(5)验证Docker是否安装成功
①启动Docker
[code]systemctl start docker #systemctl enable docker 加入自启动
②
docker version
有Client和Service代表安装成功。
2 测试实例 hello world
(1)下载hello-world image文件
docker image pull是抓取
image文件的命令;
library/hello-world是
image文件在仓库里面的位置。
[code]docker image pull library/hello-world
docker images可查看本地docker镜像有哪些。
(2)运行hello-world image文件
[code]docker container run hello-world
3 Docker镜像制作
利用镜像运行容器。本实例创建一个简单的apache服务器镜像,并通过镜像运行容器。
(1)创建工作目录
[code]mkdir apache cd apache
(2)创建并编写dockerfile文件
vi dockerfile并写入以下内容:
[code]#基础镜像 FROM centos #维护该镜像的用户信息 MAINTAINER The Centos Project<cloud-ops@centos.org> #镜像操作指令安装 apache 软件包 #低版本centos需更新yum源,即加上下面这句 #RUN yum -y update RUN yum -y install httpd #开启 80 端口 EXPOSE 80 #复制index.html文件,并把它设置网站首页文件 ADD index.html /var/www/html/index.html #将执行脚本复制到镜像中 ADD run.sh /run.sh RUN chmod 755 /run.sh #启动容器时执行脚本 CMD ["/run.sh"]
(3)编写执行脚本run.sh
vi run.sh并写入以下内容:
[code]#!/bin/bash rm -rf /run/httpd/* exec /usr/sbin/apachectl -D FOREGROUND
(4)创建apache服务首页页面index.html
vi index.html并写入以下内容:
[code]<h1>Hello for Docker</h1>
(5)生成镜像
[code]#docker build [选项] 路径 #-t:指定镜像的标签信息 docker build -t apache:centos . #'.'表示当前路径
查看本地镜像docker images
(6)利用镜像运行容器
①实现将本地端口 8080 映射到容器中的 80 端口
[code] docker run -d -p 8080:80 apache:centos
②windows下使用浏览器访问虚拟机:
IP:8080
注:如果发现无法访问虚拟机,应该是防火墙的问题。开放相应端口或关闭防火墙即可。
[code]#方式一:允许8080端口流量 firewall-cmd --permanent --zone=public --add-port=8080/tcp #防火墙开放8080端口:success代表设置成功 firewall-cmd --reload #重新加载防火墙配置:success代表成功 firewall-cmd --zone=public --query-port=8080/tcp #检查80端口配置是否生效:yes代表生效 #方式二:关闭防火墙 systemctl stop firewalld systemctl disable firewalld
相关文章推荐
- docker 的安装以及简单centos镜像制作、启动
- 傻瓜式简单制作Windows7旗舰版免激活光盘镜像教程 (安装后自动激活)
- Docker制作tomcat镜像简单实践
- Docker安装初试&&制作centos6.5基础镜像
- docker 基础教程-入门:(三)--简单制作镜像
- 制作python docker镜像遇到pip安装依赖包ascii codec cant decode byte错误及解决方法
- 傻瓜式简单制作Windows7旗舰版免激活光盘镜像教程 (安装后自动激活)
- 简单两步自己动手制作联想windows7 sp1 64位旗舰版安装镜像文件windows7旗舰版主
- docker 安装 创建支持ssh服务的镜像 创建nginx服务的镜像 用dockerfile制作nginx镜像
- (转)傻瓜式简单制作Windows7旗舰版免激活光盘镜像教程 (安装后自动激活)
- docker制作镜像 apt-get 安装文件报错debconf: unable to initialize frontend: Dialog
- docker安装、仓库以及镜像制作
- (转)傻瓜式简单制作Windows7旗舰版免激活光盘镜像教程 (安装后自动激活)
- linux docker安装 制作Elasticsearch容器镜像 并上传docker hub
- 阿里云服务器:Dockerfile利用外网yum源制作镜像,并且安装Apache自启动容器,同时测试外网能连接容器
- 使用docker-compose安装redash(使用源码文件制作镜像)文件进行安装
- 软件安装工具制作之-Advanced Installer简单教程
- Docker的安装和镜像创建
- 简单WINFORM安装程序制作
- 简单制作 OS X Yosemite 10.10 正式版U盘USB启动安装盘方法教程 (全新安装 Mac 系统)