Docker常用命令
Docker基础命令
systemctl start docker 启动docker
systemctl stop docker 关闭docker
systemctl restart docker 重启docker
systemctl status docker 查看docker状态
docker version 查看版本信息
docker info 查看docker信息
Docker镜像命令
docker pull IMAGE <:tags> 从远程仓库抽取镜像,tags指定版本
docker images 查看本地镜像
docker rmi <-f> IMAGE :
docker tag SOURCE_IMAGE[:TAG] TARGET_IMAGE[:TAG] 镜像标签:生成新的镜像名和TAG
docker build -t bigtree/myapp:v1 使用Dockerfile创建镜像
docker login -u 用户名 -p 密码 登录到一个Docker镜像仓库
docker loginout 登出一个Docker镜像仓库
docker push [OPTIONS] NAME[:TAG] 将本地镜像上传到镜像仓库
Docker容器命令
docker run [OPTIONS] IMAGE <:tags> 创建容器,启动应用
OPTIONS说明:
-d: 后台运行容器,并返回容器ID;
-i: 以交互模式运行容器,通常与 -t 同时使用;
-p: 指定端口映射,格式为:主机(宿主)端口:容器端口
-t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用;
--name="nginx-lb": 为容器指定一个名称;
-h "mars": 指定容器的hostname;
-m :设置容器使用内存最大值;
--net="bridge": 指定容器的网络连接类型,支持 bridge/host/none/container: 四种类型;
--link=[]: 添加链接到另一个容器;
--expose=[]: 开放一个端口或一组端口;
--volume , -v: 绑定一个卷
例如:
docker run -it -d --name redis -p 6379:6379 redis:5.0.5 /bin/bash
docker start CONTAINER 启动容器
docker stop CONTAINER 关闭容器
docker restart CONTAINER 重启容器
docker kill CONTAINER kill容器
docker pause CONTAINER 暂停容器内所有进程
docker unpause CONTAINER 恢复容器内所有进程
docker create [OPTIONS] IMAGE 创建一个新的容器但不启动它
docker exec [OPTIONS] CONTAINER COMMAND 在运行的容器中执行命令
docker ps 查看正在运行的容器列表
docker ps -a 查看所有容器(包括停止的)
docker rm <-f> 容器ID 删除容器
docker exec -it CONTAINER /bin/bash 进入容器
docker logs
示例:以Tomcat镜像为例
创建tomcat容器并启动运行
docker run -p 8000:8080 -d tomcat
启动后,在浏览器访问http://localhost:8000即可查看启动后效果。
查看运行中的容器
docker ps
根据容器ID进入交互模式的终端:
docker exec -it 8448aefe75a5 /bin/bash
如下所示,在交互模式的终端内,可以执行一些基本的Linux命令。
C:\Users\whwtr>docker exec -it 8448aefe75a5 /bin/bash
root@8448aefe75a5:/usr/local/tomcat# ls
bin conf lib logs NOTICE RELEASE-NOTES temp webapps.dist
BUILDING.txt CONTRIBUTING.md LICENSE native-jni-lib README.md RUNNING.txt webapps work
root@8448aefe75a5:/usr/local/tomcat# cd webapps
root@8448aefe75a5:/usr/local/tomcat/webapps# ls
root@8448aefe75a5:/usr/local/tomcat/webapps# cat /proc/version
Linux version 5.10.16.3-microsoft-standard-WSL2 (oe-user@oe-host) (x86_64-msft-linux-gcc (GCC) 9.3.0, GNU ld (GNU Binutils) 2.34.0.20200220) #1 SMP Fri Apr 2 22:23:49 UTC 2021
root@8448aefe75a5:/usr/local/tomcat/webapps# java -version
openjdk version "17.0.4.1" 2022-08-12
OpenJDK Runtime Environment Temurin-17.0.4.1+1 (build 17.0.4.1+1)
OpenJDK 64-Bit Server VM Temurin-17.0.4.1+1 (build 17.0.4.1+1, mixed mode, sharing)
root@8448aefe75a5:/usr/local/tomcat/webapps# exit
exit
C:\Users\whwtr>
从以上我们可以看出,Tomcat容器的内部结构为:Tomcat + JDK + Linux简版
(完)