在 Ubuntu 上管理 Docker,通常包括安装、配置、日常使用、运维和安全几个方面。下面给你一个实用、系统的指南。
sudo apt update
sudo apt upgrade -y
sudo apt install -y ca-certificates curl gnupg lsb-release
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | \
sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] \
https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
sudo docker version
sudo docker run hello-world
sudo usermod -aG docker $USER
重新登录后生效。
sudo systemctl enable docker
sudo systemctl start docker
systemctl status docker
docker images
docker pull nginx
docker rmi nginx
docker ps
docker ps -a
docker run -d -p 8080:80 --name web nginx
docker stop web
docker start web
docker rm web
docker logs web
docker exec -it web bash
docker stats
docker system df
docker-compose.ymlversion: "3"
services:
web:
image: nginx
ports:
- "8080:80"
docker compose up -d
docker compose down
docker compose ps
docker system prune
docker system prune -a
编辑:
sudo nano /etc/docker/daemon.json
内容示例:
{
"registry-mirrors": ["https://docker.m.daocloud.io"]
}
重启:
sudo systemctl restart docker
root 跑应用容器docker compose 或 k8sDocker 启动失败?
journalctl -u docker.service
端口被占用?
sudo netstat -tunlp | grep 80
如果你愿意,我可以:
你主要用 Docker 来做什么?