当前位置: 首页 > ai >正文

Docker常用操作

1、使用yum安装Docker

yum update -y
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum install -y yum-utils device-mapper-persistent-data lvm2
#安装docker-ce(社区版)
yum -y install docker-ce
#启动docker服务
systemctl status docker
systemctl start docker
#设置开启自启动
systemctl enable docker

2、使用apt安装docker

apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
apt install -y docker-compose &&  systemctl start docker && systemctl enable docker

3、使用yum安装docker-compose

yum install -y epel-release
yum install -y docker-compose

4、使用apt安装docker-compose

sudo apt update
sudo apt install docker-compose-plugin
# 验证
docker compose version

使用apt安装的docker-compose有时候会报错报错KeyError: 'ContainerConfig,无法删除容器,需手动删除,猜测可能是版本问题,先卸载已有的docker-compose:

sudo apt purge docker-compose

然后使用如下方式重新安装:

sudo curl -L "https://github.com/docker/compose/releases/download/v2.20.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

uname -s会返回你的操作系统名称。echo $(uname -s)
uname -m则会返回你的硬件架构。echo $(uname -m)

参考文档:https://blog.csdn.net/lpy13699855019/article/details/139746249

5、docker创建基础服务

#数据库服务
#mariadb
docker run --name mariadb --net=host  -v /data/code/mariadb_data:/var/lib/mysql -v /data/code/mariadb_conf:/etc/mysql/conf.d   -e  MARIADB_ROOT_PASSWORD=1qaz@WSX3edc.  -d    mariadb:10.8.2
#mysql
docker run --name mysql -p 3306:3306  --restart=always -e MYSQL_ROOT_PASSWORD=1qaz@WSX3edc. -d mysql:5.7 
#postgresql
docker run --name postgres -e POSTGRES_PASSWORD=1qaz@WSX3edc. -v postgres:/var/lib/postgresql/data -e TZ=Asia/Shanghai -p 54321:5432 -d postgres:11
#redis
docker run -d -p 6379:6379 --name redis    --restart=always  redis:3.2.10 --requirepass 1qaz@WSX3edc.
#minio
docker run --name minio \
-p 9000:9000 \
-p 9999:9999 \
-d --restart=always \
-e "MINIO_ROOT_USER=minioadmin" \
-e "MINIO_ROOT_PASSWORD=minioadmin" \
-v /data/minio/data:/data \
-v /data/minio/config:/root/.minio \
minio/minio server /data \
--console-address '0.0.0.0:9999'

6、docker创建Java服务

docker run -itd --name report-code  --network=host  --restart=always -e TZ=Asia/Shanghai -v /data/report-code:/data/report-code   -w /data/report-code  openjdk:8 java -jar aj-report-1.2.1.RELEASE.jar --spring.config.location=bootstrap.yml

7、给运行中的容器添加–restart=always

docker update --restart=always 容器名字/容器id

8、Docker 修改系统语言

FROM ubuntu:16.04
RUN apt-get update
RUN apt-get install -y locales
RUN locale-gen zh_CN.UTF-8
ENV LANG zh_CN.UTF-8
ENV LANGUAGE zh_CN:zh
ENV LC_ALL zh_CN.UTF-8
RUN update-locale LC_ALL=zh_CN.UTF-8 LANG=zh_CN.UTF-8
#docker  修改时间
docker cp /usr/share/zoneinfo/Asia/Shanghai mariadb:/etc/localtime

9、docker镜像重命名

docker tag 8ef370098394 mysql:v8.0

10、docker build构建镜像

docker build -t dax-start:latest -f ./Dockerfile .
-f,--file 指定 dockerfile 路径
-t  指定镜像名

11、保存镜像

docker save -o xd_gb_platform.tar 368fefc10e37 registry.cn-hongkong.aliyuncs.com/zxiat-amd64/xd_gb_platform:2024-01-09-1c2d655

12、加载镜像

docker load -i xd_gb_platform.tar

13、删除所有容器

docker container prune -f

14、删除所有镜像

docker rmi -f $(docker images -q)

15、删除docker images中为none的镜像

docker images|grep none|awk '{print $3 }'|xargs docker rmi

16、查询镜像

docker search elasticsearch-head

17、查看docker容器日志

#根据时间查看日志
docker logs --since="2024-06-30T16:00:00" --until "2024-07-01T12:00:00" 5cf260dec14a
docker logs --since="2024-06-30T16:00:00" --until "2024-07-01T12:00:00" 5cf260dec14a >>test.log
#根据关键字查看日志
docker logs 容器id | grep -A 10 '处理失败'  # 打印匹配行的后10行
docker logs 容器id | grep -B 10 '处理失败'  # 打印匹配行的前10行
docker logs 容器id | grep -C 10 '处理失败'  # 打印匹配行的前后10行

18、docker镜像拉取

docker pull milvusdb/milvus:v2.2.0

19、docker-compose中定义变量

java-test:image: java-test:${VERSION}container_name: java-testrestart: alwaysenvironment:# 时区上海TZ: Asia/Shanghaiports:- "19207:19207"volumes:# 配置文件- /docker/java-test/logs/:/java/test/logs# skywalking 探针- /docker/skywalking/agent/:/ruoyi/skywalking/agentprivileged: truenetwork_mode: "host"

使用docker-compose文件启动服务

VERSION=1.8 docker-compose up -d java-test

20、docker创建转码服务zlmedia

docker run -itd --name zlmedia --restart=always -e TZ=Asia/Shanghai -p 6080:80 -p 10443:443 -p 10935:1935 -p 19351:19350 -p 10554:554 -p 10554:554/udp -p 10332:332 -p 10332:332/udp -p 10010:10000 -p 10010:10000/udp  -p 30000-30500:30000-30500/udp -p 30000-30500:30000-30500/tcp  panjjo/zlmediakit
http://www.xdnf.cn/news/9266.html

相关文章:

  • 无人机多人协同控制技术解析
  • linux ls命令显示目录颜色调整
  • ntp 时钟同步
  • 无人机停机坪运行技术分析!
  • OpenGL Chan视频学习-10 Dealing with Errors in OpenGL
  • c++数据结构4——链表结构详解
  • 【DSP笔记】掌握数字世界的律动:时域离散信号与系统基础
  • React - 封装礼物PK条组件
  • winform LiveCharts2的使用--图表的使用
  • 小土堆pytorch--现有网络模型的使用及修改
  • 数据结构中无向图的邻接矩阵详解
  • 鸿蒙OSUniApp 实现的数据可视化图表组件#三方框架 #Uniapp
  • Rust 学习笔记:迭代器
  • 组合型回溯+剪枝
  • OpenCV CUDA模块图像处理------颜色空间处理之颜色空间转换函数cvtColor()
  • Axure中继器学习笔记
  • DB2数据库HADR配置及详解
  • Femap许可证与网络安全策略
  • arcgis字段计算器中计算矢量面的每个点坐标
  • vscode开发stm32,main.c文件中出现很多报错影响开发解决日志
  • 【脚本】一键部署脚本
  • 深入理解设计模式之命令模式
  • 公共场所人脸识别设备备案合规要点
  • [STM32学习笔记(九)]CubeMX项目使用系统定时器SysTick的中断服务函数进行定时
  • AWS之AI服务
  • 《OpenFeign 最佳实践:三大优雅调用远程服务的方式》​
  • 一种C# 的SM4 的 加解密的实现,一般用于医疗或者支付
  • 如何在WordPress网站中添加相册/画廊
  • 【分治】计算右侧小于当前元素的个数
  • Java集合框架详解:List、Set、Map及其实现类