安装 Docker - 旧
-
更新包索引:
sudo apt-get update
-
安装必要的依赖包,以确保 apt 可以通过 HTTPS 使用存储库:
sudo apt-get install -y \
apt-transport-https \
ca-certificates \
curl \
gnupg-agent \
software-properties-common -
添加 Docker 的官方 GPG 密钥:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
-
设置 Docker 的稳定版存储库:
sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable" -
再次更新包索引:
sudo apt-get update
-
安装 Docker:
sudo apt-get install -y docker-ce docker-ce-cli containerd.io
-
(可选)验证 Docker 是否正确安装:
sudo docker --version
现在,您已经成功安装了 Docker。您可以使用 docker
命令来管理 Docker 容器和镜像。
提升用户权限
sudo usermod -aG docker $USER
# 更新用户组
newgrp docker
创建mysql容器
sudo docker run --name mysql-container -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:8.0.31
启动mysql
sudo docker start c8c5d8cc49fe(ID)
进入mysql
docker exec -it <container_id_or_name> mysql -u <username> -p
- 检查docker状态:
sudo docker info
- 检测docker是否联通外网:`ping www.ba
要在 Docker 中运行 MySQL 容器,您需要先拉取 MySQL 镜像并创建一个新的容器实例。您可以使用以下命令来完成这些操作:
sudo docker pull mysql:latest
sudo docker run -d --name mysql_container -e MYSQL_ROOT_PASSWORD=my-secret-pw -p 3306:3306 m
编写 Docker Compose 文件
在 myproject
目录下创建一个名为 docker-compose.yml
的文件,并在其中添加以下内容:
version: '3'
services:
web:
build: .
command: python manage.py runserver 0.0.0.0:8000
volumes:
- .:/code
ports:
- "8000:8000"
environment:
- DJANGO_SETTINGS_MODULE=communist.settings
- DATABASE_URL=mysql://root:547118@db:3306/communist
db:
image: mysql
environment:
- MYSQL_DATABASE=communist
- MYSQL_USER=root
- MYSQL_PASSWORD=547118
- MYSQL_ROOT_PASSWORD=547118
ports:
- "3306:3306"
docker images
:查看docker容器里的镜像
docker ps -a
:查看运行的容器(-a,所有容器)
docker save -o nginx.tar nginx:latest
:将njinx
镜像打包保存在本地
docker rmi nginx:latest
:删除njinx
镜像
docker load -i nginx.tar
:本地下载镜像文件
docker run -d --name nginx -p 80:80 nginx1
:在后台运行用名为nginx1的镜像创建的名为nginx的容器,容器端口映射到主机80端口
docker stop nginx
:停掉名为nginx的容器的进程,但容器存在
docker start nginx
:运行nginx容器
docker logs -f 容器名
:持续输出该容器的日志
docker exec -t 容器名 bash
:以bash命令行的形式进入该容器
docker rm 容器名 -f
:强制删除该容器
docker run -d --name nginx -p 80:80 -v html:/usr/share/nginx/html nginx
:在创建容器的时候创建数据卷,容器内路径/usr/share/nginx/html
,docker文件内路径/var/lib/docker/volumes/html
,/var/lib/docker/volumes
部分为默认值