Docker 在CentOS7 下的部署相关记录

Docker

安装

在线安装:

sudo yum -y install docker-ce docker-ce-cli containerd.io

具体可参考大神文档(本人未验证…)
转载链接: https://blog.csdn.net/m0_59196543/article/details/124749175

离线安装:

# 如果没有unzip,下载unzip-6.0-19.el7.x86_64.rpm包
rpm –ivh unzip-6.0-19.el7.x86_64.rpm
#解压
unzip soft.zip
cp -r ./soft/rpm /tmp	
sudo yum -y install --noplugins --disablerepo=\* --enablerepo=docker -c ./soft/docker.repo docker-ce docker-ce-cli containerd.io
rm -rf /tmp/rpm
#启动docker 设置开机启动
sudo systemctl start docker
sudo systemctl enable docker
#如果启动保存,可以尝试关闭防火墙
# 关闭
systemctl stop firewalld
# 禁止开机启动防火墙
systemctl disable firewalld
#查看是否关闭防火墙
systemctl status firewalld
#如果不是root用户安装,添加当前用户到 docker 组
sudo usermod -aG docker 安装用户名

docker离线包soft.zip

查看镜像信息

docker images
REPOSITORY(仓库名)        TAG(版本)       IMAGE ID(镜像id)       CREATED(创建时间)        SIZE(大小)

查看容器信息

docker ps
CONTAINER ID(容器id)       IMAGE (镜像名:版本)       COMMAND(运行容器时的命令)       CREATED(创建时间)        STATUS(容器的运行状态)        PORTS(容器开放的端口信息)       NAMES(容器的别名)

导入和导出镜像

# docker load 导入镜像库存储文件到本地镜像库,镜像存储文件将保存完整记录。与docker save 导出镜像为文件对应使用。
docker load < images.tar
docker save 镜像id -o images.tar
#
# docker import 导入一个容器快照到本地镜像库,容器快照将会丢弃所有的历史记录和元数据信息.与docker export导出容器为文件对应使用。
docker import images.tar images:版本号
docker export -o images.tar 容器id

如果想保存容器中的修改,需要先将容器commit为镜像,再save

docker commit 容器id 镜像名:版本
docker save -o images.tar 镜像名:版本
docker load < images.tar

启动容器相关

创建docker容器间通信网络

# 可以在宿主机的端口有各种访问限制的环境下使用,创建一个容器间共用的网络,之后通过容器名来访问彼此。例如:
docker network create {自定义网络名}
# run时添加参数 --network  {自定义网络名}
docker run -it -d --name java --network  {自定义网络名} -p 10000:10000 java bash
docker run -p 80:80 --name nginx --network  {自定义网络名} -d nginx
docker run -d -it --name python --network  {自定义网络名} -p 10001:10001  python /bin/bash 
# nginx的配置文件编写
---
        location /java/ {
            proxy_pass http://java:10000/java/;
        }
        location /python/ {
            proxy_pass http://python:10001/python/;
        }
---

保证docker容器能够访问使用宿主机IP

#方法一
# 一般使用在需要license等IP校验的环境
#在run命令中添加参数  -v /proc:/hostip/:ro
docker run -it -d --name java -p 10000:10000 -v /proc:/hostip/:ro java bash
#方法二
#使用参数 --network host ,这个模式需要占用宿主机对应的端口访问权限
docker run -it -d --name java --network host -p 10000:10000 java bash

宿主机数据文件或者目录,绑定容器

#在run命令中添加参数  -v  宿主机绝对路径目录:/容器内目录
docker run -it -d --name java -p 10000:10000 -v /data:/opt java bash
#一般情况下,可以通过参数,打开root的权限 --privileged=true
docker run --privileged=true -it -d --name java -p 10000:10000 -v /data:/opt java bash

容器启动后,自动执行命令

#在run命令中添加参数  -c ""
docker run --privileged=true -it -d --name java -p 10000:10000 -v /data:/opt java /bin/bash -c "cd /opt/java && java -jar java.jar "

容器自启动

#添加参数  --restart=always
docker run --privileged=true --restart=always -it -d --name java -p 10000:10000 -v /data:/opt java /bin/bash -c "cd /opt/java && java -jar java.jar "

容器日志查看

docker logs [OPTIONS] 容器名
# OPTIONS可选 :-f : 跟踪日志输出 --since :显示某个开始时间的所有日志  -t : 显示时间戳  --tail :仅列出最新N条容器日志

查看容器的元数据信息

docker inspect 容器名或镜像名
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值