Docker常用命令
1. Docker安装与卸载
1.1 安装docker
引用文章:Ubuntu 22.04下Docker安装
#安装前先卸载操作系统默认安装的docker,
sudo apt-get remove docker docker-engine docker.io containerd runc
#安装必要支持
sudo apt install apt-transport-https ca-certificates curl software-properties-common gnupg lsb-release
# 阿里源(推荐使用阿里的gpg KEY)
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
#阿里apt源
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
#更新源
sudo apt update
sudo apt-get update
#安装最新版本的Docker
sudo apt install docker-ce docker-ce-cli containerd.io
#等待安装完成
#查看Docker版本
sudo docker version
#查看Docker运行状态
sudo systemctl status docker
1.2 卸载docker
# 查看正在运行的容器
docker ps
# 停止所有运行中的容器
docker stop $(docker ps -q)
# 删除所有容器
docker rm $(docker ps -aq)
# 删除所有镜像
docker rmi $(docker images -q)
sudo systemctl stop docker
sudo yum remove docker-ce docker-ce-cli containerd.io
sudo rm -rf /var/lib/docker
sudo yum autoremove
1.3 Docker镜像加速
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": [ "yuormirror" ]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
1.4 Github加速
sudo nano /etc/hosts
140.82.112.3 github.com #hosts文件中添加内容
sudo systemctl restart systemd-resolved
2. 镜像管理
2.1 列出所有镜像
docker images
2.2 拉取镜像
docker pull 镜像名
2.3 删除镜像
docker rmi 镜像ID
docker rmi -f $(docker images -q)
3. 容器管理
3.1 启动新容器
docker run [选项] [镜像名] [命令]:创建并启动容器
常用选项:-d(后台运行)、-p [主机端口]:[容器端口](端口映射)、-v [主机路径]:[容器路径](挂载卷)、--name [容器名](指定容器名称)
3.2 列出所有容器
docker ps -a
3.3 启动已停止的容器
docker start 容器名
3.4 停止运行中的容器
docker stop 容器名
docker stop $(docker ps -q) # 停止所有容器
3.5 重新启动容器
docker restart 容器名
3.6 删除容器
docker rm 容器名
docker rm -f $(docker ps -aq)
3.7 常用组件启动命令
3.7.1 mysql
docker run -d \
--name mysql-server \
-e MYSQL_ROOT_PASSWORD=my-secret-pw \
-p 3306:3306 \
--restart unless-stopped \
mysql:8.0
3.7.2 redis
docker run -d \
--name redis-server \
-p 6379:6379 \
-v redis-data:/data \
--restart unless-stopped \
redis:latest \
redis-server --appendonly yes --requirepass "your-strong-password"
3.7.3 mongoDB
docker run -d \
--name mongo-server \
-p 27017:27017 \
-v mongo-data:/data/db \
-e MONGO_INITDB_ROOT_USERNAME=admin \
-e MONGO_INITDB_ROOT_PASSWORD=strong-password \
--restart unless-stopped \
mongo:latest
3.7.4 Dify
git clone https://github.com/langgenius/dify.git --branch 1.4.2
cd dify/docker
cp .env.example .env
docker compose up -d
3.7.5 LangBot
git clone https://github.com/RockChinQ/LangBot
cd LangBot
docker compose up
我的微信公众号:小孟的技术笔记
我的个人博客网站:www.mengkecoding.cn
感谢阅读!如果喜欢这篇内容,欢迎点击【关注】,后续将为您带来更多优质分享~