Docker - 基础操作与实例

Docker 镜像仓库官方地址:https://hub.docker.com/

【1】镜像基础操作

操作 命令 说明
检索 docker search 关键字 我们经常去docker hub上检索镜像的详细信息,如镜像的TAG
拉取 dockerpull 镜像名:tag :tag是可选的,tag表示标签,多为软件的版本,默认是latest
列表 docker images 查看所有本地镜像
删除 dockerrmi image-id 删除指定的本地镜像

【2】镜像操作实例

① 检索mysql镜像

命令(从docker官方仓库检索):

docker search mysql

这里写图片描述


② 将镜像下载本机

命令如下:

docker pull mysql
//默认最新版本

docker pull mysql:5.7.22
//拉取指定版本

这里写图片描述
这里写图片描述


③ 查看本地下载的镜像

命令如下:

docker images

这里写图片描述


④ 删除指定镜像

命令如下:

docker  rmi image-id

如下所示,删除id 为 0d16d0a97dd1 的镜像:

这里写图片描述


【3】容器基础操作

将下载下来的镜像运行,生成对应的容器。

操作 命令 说明
运行 docker run –name container-name -d image-name –name:自定义容器名 -d:后台运行 image-name:指定镜像模板
列表 docker ps(查看运行中的容器) 加上-a;可以查看所有容器
停止 docker stop container-name/container-id 停止当前你运行的容器
启动 docker start container-name/container-id 启动容器
删除 docker rm container-name/container-id 删除指定容器
端口映射 -p 6379:6379 -p:主机端口(映射到)容器内部的端口
容器日志 docker logs container-name/container-id 查看容器内软件运行日志

【4】容器操作实例

这里以Tomcat为例进行操作。

① 运行镜像,创建容器

[root@localhost ~]# docker run --name mytomcat -d tomcat:latest
6999c2f8d40f3c03e6953adb4c15391643d007d934af2933a9c0dbe173ee0664

② 查看容器(运行中/所有)

docker ps //查看运行中的容器
docker ps -a //查看所有容器

这里写图片描述


③ 启动/停止容器

docker  start  container-name/container-id
docker  stop   container-name/container-id

这里写图片描述


④ 容器端口映射

此时是不能够访问Tomcat的8080端口的,需要做主机到容器的端口映射。如下图:

这里写图片描述
进行端口映射:

[root@localhost ~]# docker run --name mytomcat -p 8080:8080 -d tomcat:latest
b9db8db45133b27b45e3b2f454039c76524930461a3abb05df63c9ad85998e27
[root@localhost ~]# docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS                    NAMES
b9db8db45133        tomcat:latest       "catalina.sh run"   7 seconds ago       Up 6 seconds        0.0.0.0:8080->8080/tcp   mytomcat

这里写图片描述


⑤ 删除容器

docker rm container-name/container-id

这里写图片描述


⑥ 查看容器运行日志

docker logs container-name/container-id

这里写图片描述


⑦ 创建多个tomcat

# 创建Tomcat8081
docker run --name tomcat8081 -p 8081:8080 -d tomcat:latest

#创建Tomcat8082
docker run --name tomcat8081 -p 8081:8080 -d tomcat:latest

这里写图片描述


访问8081端口:

这里写图片描述


其他Docker命令参阅官网:docker命令官网地址


【Tips】

创建多个Tomcat并启动容器的时候可能会遇到如下错误:

Error response from daemon: Cannot start container web: iptables failed: iptables -t nat -A DOCKER -p tcp -d 0/0 --dport 8081 -j DNAT --to-destination 172.17.0.30:5000 ! -i docker0: iptables: No chain/target/match by that name.

解决办法:重建docker0网络恢复

pkill docker 
iptables -t nat -F 
ifconfig docker0 down 
brctl delbr docker0 
service docker restart

猜你喜欢

转载自blog.csdn.net/j080624/article/details/80791348