虚拟化容器docker

docker安装配置

前置条件:删除系统中的docke

rpm -qa | grep docker  查找docker安装的应用的全称
rpm -e docker-engine-1.7.1-1.el6.x86_64  卸载docker应用

步骤一:检查操作系统环境 ,因为docker支持的最低内核版本是2.4

步骤二:安装docker依赖的包

yum install -y yum-utils device-mapper-persistent-data  lvm2

步骤三:通过yum安装docker , 添加yum源

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

安装docker的ce版本Docker CE 和 Docker EE。Docker CE 即社区免费版,Docker EE 即企业版,  强调安全,但需付费使用。

yum install -y docker-ce

检查docker是否正常工作 ,启动docker

systemctl start docker

docker配置镜像加速

为什么需要配置镜像加速?

  docker默认的源为国外官方源,下载速度较慢,可改为国内,加速

Docker 官方中国区

https://registry.docker-cn.com

网易

http://hub-mirror.c.163.com

中国科技大学

https://docker.mirrors.ustc.edu.cn

阿里云

https://pee6w651.mirror.aliyuncs.com

查看aliyun的镜像加速服务器

https://cr.console.aliyun.com/cn-hangzhou/instances/repositories

配置镜像加速器

针对Docker客户端版本大于 1.10.0 的用户

您可以通过修改daemon配置文件/etc/docker/daemon.json来使用加速器

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://w1cnccbw.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

镜像命令

1)docker  images  查看所有的镜像
-a :列出本地所有的镜像(含中间映像层,默认情况下,过滤掉中间映像层);
--digests :显示镜像的摘要信息;
-f :显示满足条件的镜像;
docker images --filter "dangling=true"--format :指定返回值的模板文件;
--no-trunc :显示完整的镜像信息;
trunc是截取的意思
-q :只显示镜像ID。
2)搜索镜像
name:镜像名称
DESCRIPTION:描述信息
STARS:收藏数,镜像的收藏数越高越靠谱
OFFICIAL:官方提供
AUTOMATED:非官方
-s N 列出收藏数大于N的镜像
3)删除镜像
上图中的镜像mydocker:v1.0被容器729a24020dfc使用,所以不能直接删除,如果非要删除,需要先停止容器,然后加-f删除。
如果镜像没有被任何容器使用,可以直接删除
4)构建镜像
进入到dockerfile所在的目录,执行下面的命令:
docker build -t mydocker:v1.1 .
-t :指定镜像的名字和标签,名字叫作mydocker,标签叫作v1.1   
.代表dockerfile所在的路径
5)修改镜像
通过修改容器的方式生成新的镜像,来达到修改镜像的目的。
6)拉取镜像
docker pull
7)导出镜像
docker save -o mybak mydocker:v1.1
mybak 是目标文件的名字,文件导出到当前目录
mydocker:v1.1是源镜像的名字和标签
8)导入镜像
     docker load  <备份文件名

docker运行tomcat

1)启动容器
docker run -d --name zhangsan -p 9090:8080 7f518d57b1eb
[root@guanggong ~]# docker run -it tomcat:8.0
-i以交互模式运行容器,通常与 -t 同时使用;退出命令行之后,容器自动停止。 交互模式在命令行进行交互,输入exit或者关闭终端,容器停止 -t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用; -p:对于需要对外提供网络服务的容器需要配置,例如tomcat,mysql,redis,-p 宿主机端口号:容器内部端口号。 -P: 随机产生一个端口,(如果是自己构建的镜像,需要使用EXPOSE 8080在dockerfile中声明使用的端口号)。 -d:守护式运行,后台运行。容器一直运行,docker不死,容器不死。 2)停止容器 docker stop id/name 3)删除容器 docker rm -f id/$(docker ps -qa) 4)查看容器 docker ps -a -a:显示所有的容器,包含已经关闭的。
5)进入容器
docker exec -it 9f5109aa1b7c /bin/bash
 
6)进入mysql的命令
[root@server01 ~]# docker run -d --name xxxmysql -p 4306:3306 -e MYSQL_NATIVE_PASSWORD=Es*QZhbOs0% 718a6da099d8 61d0ba282614edc9f291cb03d55d81ccefbc9f4cff43556cc3f742dd4d6a66ed

 

原文地址:https://www.cnblogs.com/cwshuo/p/13447112.html