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

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

相关文章:

  • 下一代 SaaS 平台的 AI 架构重构路径——多租户 AI 服务调度 · 多角色智能辅助 · 嵌入式 AIGC 能力的融合设计
  • 欧几里得 ---> 裴蜀定理 ---> 拓展欧几里得
  • OpenCV CUDA模块图像处理------颜色空间处理之拜耳模式去马赛克函数demosaicing()
  • HarmonyOS NEXT~鸿蒙系统运维:全面解析与最佳实践
  • el-tree拖拽事件,限制同级拖拽,获取拖拽后节点的前后节点,同级拖拽合并父节点name且子节点加入目标节点里
  • 【华为云物联网】如何实现在 MQTT.fx 上模拟数据间隔上传一次,并按设定系数变动数据
  • 打造AI智能旅行规划器:基于LLM和Crew AI的Agent实践
  • python和java差异:关键数据类型与容器
  • PaddleNLP 的文本分类项目
  • Cmake4编译PaddleOCR3.0成功步骤
  • 分块查找详解
  • yolo最终笔记
  • 【node】Express创建服务器
  • 使用新一代达梦管理工具SQLark,高效处理 JSON/XML 数据!
  • linux快速入门-VMware安装linux,配置静态ip,使用服务器连接工具连接,快照和克隆以及修改相关配置信息
  • 通用前端框架项目静态部署到Hugging Face Space的实践指南
  • 2025.5.27学习日记 linux三剑客 sed与正则表达式
  • IEEE出版|2025人工智能驱动图像处理与计算机视觉技术国际学术研讨会 (AIPCVT 2025)
  • 自动生成提示技术突破:AUTOPROMPT重塑语言模型应用
  • Cesium添加点、线、面
  • 织梦欧美网站模板/网络优化排名培训
  • 网站做任务给钱的/怎样注册网站
  • 建站快车优势/域名解析网站
  • 英国零售电商网站开发/接广告赚钱的平台
  • 淘宝发布网站建设/seo推广方法集合
  • 做p2p理财网站/搜索引擎优化岗位