docker18.09.5 安装与启动、容器、镜像
docker安装与启动
yum -y update
1、卸载老版本的 docker 及其相关依赖
yum remove -y docker docker-common container-selinux docker-selinux docker-engine
2、安装 yum-utils,它提供了 yum-config-manager,可用来管理yum源
yum install -y yum-utils
3、添加yum源
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
保存到路径:repo saved to /etc/yum.repos.d/docker-ce.repo
4、更新yum索引
yum makecache fast
5、安装 docker-ce
yum install docker-ce
6、验证是否安装成功
[root@localhost elasticsearch-6.7.0]# docker info Containers: 0 容器个数 Running: 0 运行中个数 Paused: 0 暂停中个数 Stopped: 0 停止个数 Images: 0 镜像个数 Server Version: 18.09.5 版本号
7、启动 docker
systemctl start docker 启动
systemctl stop docker 停止
systemctl status docker 或者 ps -ef|grep docker 查看状态
宿主机安装软件
yum -y install git 下载git
git --version 查看git版本,1.8.3.1
docker在宿主机的安装目录是: /var/lib/docker
容器
docker ps 查看正在运行的容器
docker ps –a 列出所有容器
docker ps –l 列出最后运行的容器,不管该容器是运行还是停止
[root@localhost elasticsearch-6.7.0]# docker run -t -i --name firstC centos /bin/bash 创建一个容器命名为firstC 运行环境为centos, 并进入shell命令 [root@a01a9938bed7 /]# exit 进入容器中运行,容器ID为 a01a9938bed7,退出容器命令:exit exit [root@localhost elasticsearch-6.7.0]# docker run -t -i --name firstA centos /bin/bash 创建一个容器命名为firstA 运行环境为centos, 并进入shell命令 [root@e37464fd75ef /]# exit 进入容器中运行,容器ID为 e37464fd75ef exit [root@localhost elasticsearch-6.7.0]# docker ps -a 列出所有容器 CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES e37464fd75ef centos "/bin/bash" 15 seconds ago Exited (0) 4 seconds ago firstA a01a9938bed7 centos "/bin/bash" 5 minutes ago Exited (127) 4 minutes ago firstC [root@localhost elasticsearch-6.7.0]# docker ps -l 列出最后运行的容器,不管该容器是运行还是停止 CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES e37464fd75ef centos "/bin/bash" 18 seconds ago Exited (0) 7 seconds ago firstA
启动容器有两种方式:
1) docker start "CONTAINER ID" 例子: docker start e37464fd75ef
2)docker start "NAMES" 例子: docker start firstA
进入已启动的容器方式:
docker exec -ti firstA /bin/bash //交互式进程
docker exec -d firstA touch /home/jack //后台进程,指定哪个用户
power off //关闭容器,如果是-d守护进程则不能手动关闭
exit //退出容器
停止容器
docker stop myname
docker stop id
删除容器
docker rm -f myname
docker rm -f id
创建守护式(后台运行)容器
docker run –name myname –d centos /bin/sh –c “while true;do echo hello world; sleep 1;done”
获取容器日志
docker logs myname –ft
容器启动参数
-d 表示运行在后台的意思
-t 表示日志带上时间戳
-i 以交互模式运行容器,通常与-t同时使用
查看容器的详细信息
docker inspect firstA //可以查看容器的IP等信息
镜像
知识点:Registries和repositories,Registry是存储docker镜像的地方,在registry中,镜像存储在repository。
镜像仓库地址: https://hub.docker.com
也可以直接搜索镜像,比如tomcat镜像搜索: docker search tomcat
tomcat 7版本镜像拉取: docker pull tomcat:7
镜像映射端口到宿主机:
tomcat镜像7版本,把容器里的端口8080映射到宿主机端口9000: docker run -d -p 9000:8080 tomcat:7
启动日志查看,-t带上时间戳: docker logs imageName -ft
访问: http://宿主机IP:9000/
查看镜像及版本: docker images
根据镜像ID启动镜像: docker run -ti 8760d3c62959 /bin/bash
根据镜像ID删除镜像: docker rmi -f 8760d3c62959
启动jack/redis镜像并为容器指定名字redis: docker run -ti -d --name redis jack/redis