Docker安装以及常用命令

Docker安装以及常用命令

一、docker安装

1.yum更新

yum update

2、安装需要的软件包

yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的

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

3、设置yum源

yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

4、安装docker

出现输入的界面都按 y

yum install docker-ce  或者
yum install -y docker-ce

5、查看docker版本

docker -v

二、docker启动

1.启动docker

systemctl start docker

2.停止docker

systemctl stop docker

3.重启docker

systemctl restart docker

4.docker状态

systemctl status docker

5.开机启动

systemctl enable docker

6.docker概要信息

docker info

7.docker帮助文档

docker --help

三、镜像相关

1.查看镜像

docker images
docker images –q # 查看所用镜像的id

2.搜索镜像

​ 从网络中查找需要的镜像

docker search 镜像名称

3.拉取镜像

​ 从Docker仓库下载镜像到本地,镜像名称格式为 名称:版本号,如果版本号不指定则是最新的版本。如果不知道镜像版本,可以去docker hub 搜索对应镜像查看。

docker pull 镜像名称:版本号

4.删除镜像

docker rmi 镜像id # 删除指定本地镜像
docker rmi `docker images -q`  # 删除所有本地镜像

四、容器相关

1.查看容器

docker ps # 查看正在运行的容器
docker ps –a # 查看所有容器

2.创建并启动容器

参数说明:

  • -i:保持容器运行。通常与 -t 同时使用。加入it这两个参数后,容器创建后自动进入容器中,退出容器后,容器自动关闭。

  • -t:为容器重新分配一个伪输入终端,通常与 -i 同时使用。

  • -d:以守护(后台)模式运行容器。创建一个容器在后台运行,需要使用docker exec 进入容器。退出后,容器不会关闭。

  • -it 创建的容器一般称为交互式容器,-id 创建的容器一般称为守护式容器

  • –name:为创建的容器命名。

  • –restart=always :容器自启

  • docker update --restart=always 容器ID/容器名称:运行的容器添加自启动

docker run 参数  
	Eg:docker run -id \
        -p 3307:3306 \
        --name=c_mysql \
        --restart=always \
        -v $PWD/conf:/etc/mysql/conf.d \
        -v $PWD/logs:/logs \
        -v $PWD/data:/var/lib/mysql \
        -e MYSQL_ROOT_PASSWORD=123456 \
        mysql:5.6 

参数说明:

  • -p 3307:3306:将容器的 3306 端口映射到宿主机的 3307 端口。

  • -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 用户的密码。

3.进入容器

docker exec 参数 # 退出容器,容器不会关闭  Eg:docker exec –it c_mysql /bin/bash,或者 docker exec –it c_mysql bash

4.停止容器

docker stop 容器名称

5.启动容器

docker start 容器名称

6.删除容器

如果容器是运行状态则删除失败,需要停止容器才能删除

docker rm 容器名称

7.查看容器信息

docker inspect 容器名称

五、容器数据卷

1.配置数据卷

docker run ... –v 宿主机目录(文件):容器内目录(文件) ... 
Eg:docker run -id --name=c_mysql -v $PWD/conf:/etc/mysql/conf.d \
	centos:7 /bin/bash 

六、镜像制作

1.容器转为镜像

docker commit 容器id 镜像名称:版本号                 从容器创建一个新的镜像
docker save -o 压缩文件名称 镜像名称:版本号           将指定镜像保存成 tar 归档文件
docker load –i 压缩文件名称                        导入使用docker save命令导出的镜像

七、日志查看

1、Docker logs 命令格式
docker logs 参数 容器名/容器id

参数说明:

–details 显示提供给日志的其他详细信息
–follow , -f 实时跟踪日志输出
–since 显示自某个timestamp之后的日志大于等于某个时间,或相对时间,如1h 就是1h)
–tail , -n all 从日志末尾显示的行数,默认值为all 全部
–timestamps , -t 日志每行显示日志时间戳
–until 显示自某个timestamp之前的日志小于等于某个时间,或相对时间,如30m(即30分钟)

用法示例

#通过容器名
docker logs tomcat8

#通过容器id 
docker logs fe734a934051

#通过容器id 显示时间戳
docker logs -t -n 5 fe734a934051

#查询最近1小时的日志最新10行日志
docker logs --tail=10 --since 1h tomcat8

#实时跟踪tomcat8日志每次显示最新15行日志
docker logs --follow --tail=15 tomcat8docker logs --f --tail=15 tomcat8

#查询tomcat8的日志内容包含error取最新5行,注意需要使用2>&1进行重定向
docker logs -n 5 tomcat8 2>&1 | grep 'error'

#查询tomcat8的包含错误的日志并且写入 /usr/logs_error001.txt
docker logs -t tomcat8 | grep 'error' >> /usr/logs_error001.txt

#查询指定时间范围内的tomcat8的日志文件 取最新8行
docker logs -t -n 8 --since="2022-08-02T13:23:37" --until="2022-08-02T22:23:37" tomcat8

你可能感兴趣的:(Linux服务器以及虚拟机系列,Java开发,docker,容器,linux)