CentOS7搭建Docker镜像实战
一、搭建环境
使用的是VMWare 12虚拟机安装的CentOS7
安装成功后修改ip:
1. ip addr查看相关信息;
2. 修改/etc/sysconfig/network-scripts/ifcfg-ethXXX文件的ONBOOT=yes;
3. 重新启动网络配置/etc/init.d/network restart;
4. 用ip addr获得自动分配的ip;
然后,我们就可以通过Xshell登陆虚拟机的CentOS方便操作。
参考:http://www.cppblog.com/niewenlong/archive/2008/06/05/52277.aspx
二、安装Docker
在宿主主机中安装Docker(CentOS可以使用yum和rpm安装,而Ubuntu可以使用apt-get,dpkg,make install)
yum -y install docker-io
查看Docker是否安装成功:
docker version
启动Docker服务:(如service命令启动不了:systemctl start docker.service - 旧式的 sysv 语法)
service docker start
设置为开机启动可以使用:chkconfig docker on
三、下载镜像
查找镜像:
docker search <image>
根据之前搜索结构确定下载那个镜像(下载速度有点慢,可以使用阿里云的镜像):
docker pull imagename
当下载完成后,你应该会看到:
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
docker.io/centos centos7 f753707788c5 12 days ago 127.1 MB
使用images查看本地镜像:
docker images
添加阿里云Docker镜像:https://yq.aliyun.com/articles/29941
四、启动容器
例如: docker run -itd centos
常用:docker run -ti -p 8080:8080 tomcat-test:v1 /bin/bash —— 前台运行,进入容器
docker run -d -p 8080:8080 tomcat-test:v1 /root/run.sh —— 后台运行,可通过attach进入
详细信息如下:
docker run -i -t -v /root/software/:/mnt/software/ --privileged=true 2a392a47afc5
docker run <相关参数> <镜像 ID> <初始命令>
其中相关参数包括:
-i:表示以交互模式运行容器;
-t:表示容器启动后会进入其命令行;
-v:表示需要将本地哪个目录挂载到容器中,格式-v<宿主机目录>:<容器目录>;
-d:表示以”守护模式”执行/root/run.sh脚本,此时Tomcat控制台不会出现在输出终端上;
--name:表示容器名称,用一个有意义的名称命名即可;
假设我们的所有安装程序都放在了宿主机的/root/software/目录下,现在需要将其挂载到容器的/mnt/software/目录下。这一切做好后你就可以为这个容器安装软件了。
Docker传送文件命令(本地host到对应的容器id下的指定路径):
docker cp more.log e7de404c00bd:/tmp/
另外补充一下,进入容器可以使用attach和exec:
docker attach 容器ID
docker exec -it 容器ID bash —— docker1.3增加新的exec命令行工具
五、安装开发环境需要的软件
一般会安装 jdk、tomcat、nginx、mysql、mongodb、redis...
等你安装完了环境,先不要着急 stop 掉对应容器。
六、保存更改的容器
提交镜像,存储到本地另外一个镜像命名为tomcat-test:v1,后面的是版本号;
docker commit 028ce7fa5596 tomcat-test:v1
然后使用images命令就看一看到刚生成的镜像了;
通过ps,我们可以看到运行中的容器,后面加-a可以查看所有容器:
docker ps -a
对已经存在的容器进行处理:
docker stop 028ce7fa5596 —— 停止
docker start 028ce7fa5596 —— 启动
七、存入和载入镜像(可选项)
存出镜像到本地文件为.tar包:
docker save -o tomcat-test_v1.tar tomcat-test:v1
与之相反的是,从存出的本地文件中导入本地镜像库;例如,从.tar包导入镜像到本地镜像库:
docker load --input tomcat-test_v1.tar
或者:docker load < tomcat-test_v1.tar
推荐博文:
Ubuntu:
http://www.cnblogs.com/llhf/p/5149378.html
https://segmentfault.com/a/1190000006843830
CentOS:
http://www.cnblogs.com/tianrongyao/articles/docker.html
https://linux.cn/article-4340-1.html
安装Java8和tomcat8:
http://blog.csdn.net/uq_jin/article/details/51356799
CentOS7搭建Docker镜像实战的更多相关文章
- 019.nexus搭建docker镜像仓库/maven仓库
一.安装docker CE 参考docker doc https://docs.docker.com/install/linux/docker-ce/centos/ 二.docker启动nexus3 ...
- Docker镜像实战(ssh、systemctl、nginx、tomcat、mysql)
Docker镜像实战 1.构建ssh镜像 2.构建systemctl 镜像 3.构建nginx镜像 4.构建tomcat镜像 5.构建mysql镜像 1.构建ssh镜像: 创建镜像目录 mkdir / ...
- 搭建docker镜像仓库(二):使用harbor搭建本地镜像仓库
目录 一.系统环境 二.前言 三.Harbor 四.使用harbor搭建私有镜像仓库 4.1 环境介绍 4.2 k8smaster节点安装配置harbor 4.2.1 安装harbor离线包 4.2. ...
- centos7 搭建 docker 环境
1. 安装centos7 http://isoredirect.centos.org/centos/7/isos/x86_64/ 下载 everything 版本,最小化版本可能缺失很多东西 我是在 ...
- centos7搭建docker并部署lnmp (转)
1.首先呢先更新yum源 yum -y update 2.1.安装docker存储库 yum install -y yum-utils \ device-mapper-persistent-dat ...
- Centos7搭建Docker部署LNMP
1.首先呢先更新yum源 yum update 2.1.安装docker存储库 yum install -y yum-utils \ device-mapper-persistent-data \ l ...
- 搭建docker镜像仓库(一):使用registry搭建本地镜像仓库
目录 一.系统环境 二.前言 三.使用registry搭建私有镜像仓库 3.1 环境介绍 3.2 k8smaster节点配置镜像仓库 3.3 k8sworker1节点配置从私有仓库上传和拉取镜像 3. ...
- Centos7安装Docker&镜像加速
目录 Docker Docker安装 方式一 方式二 docker 镜像加速 Docker Docker安装 Docker安装 方式一 step1: 删除老版本(Uninstall old versi ...
- centos7 搭建docker内运行rabbitmq,然后再镜像ha方案的完全教程,暂时一个宿主机只能运行一个docker的rabbitmq,但是集群 ha都正常
1.安装centos7.x,配置好网络2.因为docker需要比较高版本的内核,比如使用overlayfs作为默认docker文件系统要3.18,所以先升级内核到3.18以上版本,能直接过4是最佳了检 ...
随机推荐
- 原生js控制控制--弹窗的显示和隐藏
以防浪费大家的时间,还是先上效果图吧,满足您的需求就往下look吧. 重要知识点:点击其他地方,也就是除了小叉子之外的地方也能够关闭弹窗哦.代码已标红 html代码: <button id ...
- HTML中表格table标签的实例
一.表格有边框,第一行居中对齐 二.表格没有边框 三.表格有水平标题 四.表格有垂直标题 五.合并行单元格 colspan合并单元格 六.表格有单元格边距(内边距) 七.表格没有单元格间距 八.表格有 ...
- Redis-cli相关命令
> flushdb > SELECT OK []> GET db_number (nil) []> []> flushdb OK []> SELECT OK > ...
- Eclipse中jar包的导出与导入
JAR的含义: JAR是Java的档案文件,是Java Archive File的缩写.jar文件是一种压缩文件,就是以特定类型压缩包的形式存在的完整Java项目.通常通过导入jar包的方式来使用实现 ...
- which statement is true for the class java.util.ArrayList?
A.集合中的元素是有序的 对 B.集合被保证为不可变的 错 C.集合中的元素被保证为唯一的 错 有序的 所以不唯一 D.集合中的元素使用一个唯一的键来存取 错 没有键 E.集合中的元 ...
- influxDB 1.3 中文文档
influxDB是一个旨在处理高并发写入和查询负载的时序数据库,它是TICK框架的第二部分,influxdb用于任何包含大量时序数据应用的后台存储,包括Devops监控.应用指标数据.物联网传感器数据 ...
- React-Native 之 GD (十八)监听 TabBarItem 点击与传值实现 点击 Item 进行刷新功能
监听 TabBarItem 点击与传值实现 点击 Item 进行刷新功能 原版 APP 中当我们点击 首页和海淘 2个 Item 时,会马上获取最新数据个数然后进行更新,这边来实现一下这个功能. 1. ...
- ORACLE查询隐含参数
查询隐含参数:col name for a30col VALUE for a10col DESCRIB for a40set lines 200SELECT x.ksppinm NAME, y.ksp ...
- codeforces 704B - Ant Man [想法题]
题目链接:http://codeforces.com/problemset/problem/704/B ------------------------------------------------ ...
- 013-Spring Boot web【二】静态资源、Servlet、Filter、listenter
一.静态资源 1.1.webapp默认支持静态资源 在src/main/webapp下建立user.html默认支持访问 1.2.默认内置静态资源目录.可被直接访问 查看包:spring-boot-a ...
