Docker常用命令合集【更新中】

该文提供了Docker创建mysql、Redis和MinIO容器的命令示例,包括设置环境变量、数据卷挂载、端口映射以及调整内存限制。还介绍了如何获取容器的IP地址信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Docker常用命令合集【更新中】

在这里插入图片描述

常用命令

docker search --镜像名    搜索仓库镜像

docker pull --镜像名    拉取镜像

docker ps     查看目前正在运行的所有容器 (-a 显示包括已经停止的容器)

docker rmi image_id/image_name    删除镜像

docker build    使用Dockerfile创建镜像

docker run    运行容器

docker exec    进入容器中执行命令 (例如:docker exec -it  container_id/container_name /bin/bash)

docker logs  container_id/container_name   查看容器日志(例如:docker logs -f -t --tail 10 container_id )

docker start  container_id/container_name    启动容器

docker restart  container_id/container_name    重启容器

docker stop container_id/container_name    停止容器

docker rm container_id/container_name    删除容器(只能删除已停止的容器)

更多的命令可以通过docker help命令来查看。


mysql容器创建

docker run -d --name mysql \
-e MYSQL_ROOT_PASSWORD=abc123 \
-v /home/mysql:/etc/mysql/conf.d \
-p 3306:3306 \
mysql:latest \
--character-set-server=utf8mb4 \
--collation-server=utf8mb4_unicode_ci \
--lower_case_table_names=1

这个命令的参数含义如下:

-d:以后台模式运行容器。
--name mysql:指定容器名称为mysql。
-e MYSQL_ROOT_PASSWORD=abc123:设置MySQL root用户的密码。
-v /home/mysql:/etc/mysql/conf.d:将宿主机中的/home/mysql/目录挂载到容器中/etc/mysql/conf.d/目录下,从而覆盖容器中默认的MySQL配置文件。
-p 3306:3306:将容器内部的MySQL 3306端口映射到宿主机的3306端口。
mysql:latest:使用MySQL镜像的最新版本。
--character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci:设置MySQL的字符集编码和排序规则。
--lower_case_table_names=1:设置MySQL大小写不敏感。

2023-08-14 补充
大家可能在使用docker创建mysql容器的时候会遇到容器老是运行一会儿就自动关闭或者连接、执行很慢。其实可能是容器内存跑满了,这个时候不想重新创建容器,但是又需要更新容器内存大小,这个时候就需要用到docker update命令了。
使用以下命令来更新容器的内存限制。将 your_container 替换为容器的名称或 ID,并将 1g 替换为新的内存限制大小。

docker update --memory=1g --memory-swap=1g your_container # 容器名

创建Redis示例

docker run -p 6379:6379 --name redis 
-v /mydata/redis/data:/data
-v /mydata/redis/conf/redis.conf:/etc/redis/redis.conf
-d redis redis-server /etc/redis/redis.conf

获取docker容器内信息(ip地址等)

docker inspect  <容器ID或名称>

获取IP地址

docker inspect -f "{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}" <容器ID或名称>
docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' <容器ID或名称>
# 注意: 在windows环境中,必须使用"",部分linux环境下如果模板解析失败,需要换成''0

创建MinIO容器示例

docker run -p 9000:9000 -p 9001:9001 --name minio-server -v /your/host/path/to/data:/data -e "MINIO_ROOT_USER=admin" -e "MINIO_ROOT_PASSWORD=abc123abc123" -d minio/minio server /data --console-address ":9001"
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值