基于DevOps平台构建自己博客:7-Docker使用及操作命令介绍
一、Docker的安装
关于Docker的安装网上有很多教程,虽然不同的系统略微不同,但是也很简单,这里就不多说了。本篇的主要目的是为后续使用Docker时做一个基础的讲解,所以,本篇重点讲具体的使用及相关的命令。
安装结束之后,可以在控制台输入如下命令测试Docker是否可以正常使用
docker
二、Docker的常用命令
1. 查找镜像
该命令可以查找对应名字的镜像,命令执行后可以看到具体的镜像名字,描述,星级等信息。
命令:docker search 镜像名称
例子:docker search mysql
2. 拉取镜像
该命令可以根据名字下载镜像到本地环境。
命令:docker pull 镜像名称
例子:docker pull mysql
3. 创建容器
该命令可以使用本地已经下载的镜像创建容器,并启动。需要注意的是,启动命令可以附加参数,即启动或初始化参数都可以通过启动命令的设置完成。这里以mysql的为例。
命令:docker run 参数1 参数2 ... -d 镜像名称
例子:docker run -p 3306:3306 --name v8en -v $PWD/conf:/etc/mysql/conf.d -v $PWD/logs:/logs -v $PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=sa5221987 -d mysql
-
-p 3306:3306:将容器的 3306 端口映射到主机的 3306 端口。
-
-v -v $PWD/conf:/etc/mysql/conf.d:将主机当前目录下的 conf/my.cnf 挂载到容器的 /etc/mysql/my.cnf。
-
-v $PWD/logs:/logs:将主机当前目录下的 logs 目录挂载到容器的 /logs。
-
-v $PWD/data:/var/lib/mysql :将主机当前目录下的data目录挂载到容器的 /var/lib/mysql 。
-
-e MYSQL_ROOT_PASSWORD=123456:初始化 root 用户的密码。
4. 查看容器进程
该命令可以查看已经创建的容器,可以看到容器的ID,容器的状态,启动时间等等信息。
命令:docker ps 参数
例子:docker ps -a
5. 停止容器
该命令可以停止在运行的容器,通过4中的命令,可以看到容器的运行状态,对于在运行容器,通过该命令停止。
命令:docker stop 镜像名称/容器ID
例子:docker stop app-web
由上图可以看到,我们停止了app-web这个容器,而这个容器是我的博客的前台页面所在的容器。停止后我的博客则无法访问,但不影响我的后台。
6. 启动容器
该命令对于已经创建的容器,并且处于停止状态的容器进行启动。
命令:docker start 容器名称
例子:docker start app-web
启动后,前台页面也就可以正常访问了
7. 删除容器
该命令可以删除已经创建的容器,我这里就不演示了。
命令:docker rm 容器名称/容器ID
例子:docker rm app-web
8. 进入已启动的容器
该命令用于进入已经启动的容器内。因为我们的应用都是在容器内运行,所以,如果要获得应用运行情况的信息,最直接的方式就是进入容器内查看。
命令:docker exec -it 容器名称/容器ID /bin/bash
例子:docker exec -it app-web /bin/bash
可以看到,进入容器后,跟我们进入另外一个系统一样,app.jar便是我们在容器中启动的应用,当然,这个是我的springboot应用打包后的状态,不同的应用,进入后是不同的情况,具体取决于我们的dockerfile如何定义的。
退出容器使用exit就可以。
9. 查看容器的运行日志
通常情况系,我们在定位问题或需要查看容器启动失败的原因时,需要去查看容器的启动日志,如下就是查看docker容器日志的命令。
命令:docker logs -f -t --tail 行数 容器名称
例子:docker logs -f -t --tail 10 app-web
10. 导出容器中的内容
如果想把容器中的应用导出,则使用如下命令。
命令:docker export -o 应用名 容器名称/容器ID
例子:docker export -o app.jar app-web
由图中可以看到,我们导出了app.jar
11. 查看镜像文件
随着我们应用不断更新,会生成很多镜像,而这些镜像如果需要部署到服务器,则必须先pull到本地,这样就会有大量的镜像文件堆积,且都是旧版本。所以,我们可以通过如下命令查看已经pull的镜像。
命令:docker images
例子:docker images
12. 删除镜像文件
知道有多余不用的镜像,就可以将他们删除掉,释放空间。
命令:docker image -rm 镜像名称/镜像ID
例子:docker image -rm mysql
- 本文标签: Docker DevOps
- 本文链接: https://www.v8en.com/article/265
- 版权声明: 本文由SIMON原创发布,转载请遵循《署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)》许可协议授权