一、docker安装与基本操作
1、输入以下命令安装并开启docker服务
sudo dnf -y install docker
sudo systemctl start docker
sudo systemctl enable docker
通过dnf install安装的docker版本很低,所以通过 https://download.docker.com/linux/fedora/31/x86_64/stable/Packages/ 下载自动安装docker最新版本的containerd.io、docker-ce-cli、docker-ce(注意顺序)如下图:
按照图版所指版本,在线安装命令如下(国内网络有时会超时,多试几次,如果是Redhat或CentOS把下面dnf替换为yum):
sudo dnf install https://download.docker.com/linux/fedora/31/x86_64/stable/Packages/containerd.io-1.2.13-3.2.fc31.x86_64.rpm
sudo dnf install https://download.docker.com/linux/fedora/31/x86_64/stable/Packages/docker-ce-cli-19.03.9-3.fc31.x86_64.rpm
sudo dnf install https://download.docker.com/linux/fedora/31/x86_64/stable/Packages/docker-ce-19.03.9-3.fc31.x86_64.rpm
安装完成后使用 docker --version 命令检查版本如下:
image.png
启动docker
sudo systemctl start docker
三、常用命令
使用国内镜像 sudo vim /etc/docker/daemon.json (创建/etc/docker文件夹及daemon.json文件)
{
"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]
}
镜像操作
1、显示images
docker images
2、删除一个images
docker rmi image_name
3、强制删除一个镜像
docker rmi -f image_name
容器操作
1、显示所有容器
docker ps -a //显示所有容器
docker ps -s //显示所有启动容器
2、删除一个container
docker rm container_id
3、强制删除一个container
docker rm -f container_id
4、停止所有容器
sudo docker stop $(sudo docker ps -a -q)
5、删除所有容器
sudo docker rm $(sudo docker ps -a -q)
sudo docker container prune
6、删除所有镜像
sudo docker rmi $(sudo docker images -q)
7、删除所有未使用
docker system prune
二、安装postgresql
1、拉取postgresql镜像
sudo docker pull postgres:latest
2、运行
sudo docker run --name postgres1 -p 5432:5432 -e POSTGRES_PASSWORD=***** -d postgres
3、删除命令
sudo docker stop postgres1 && sudo docker rm postgres1
三、使用docker-compose
1、创建docker-compose.yml
version: '3.1'
services:
db:
restart: always
image: postgres
environment:
- POSTGRES_USER=${POSTGRES_USER}
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
- POSTGRES_DB=${POSTGRES_DB}
volumes:
- ./postgres-data/postgres:/var/lib/postgresql/data
ports:
- "5432:5432"
env_file:
- db.env
2、创建一个.env结尾的文件,如:db.env
USER=testusr
PASSWORD=password
DB=testdb
3、启动docker-compose
sudo docker-compose up --build
4、进入postgres容器
sudo docker exec -it contain_db_1 psql -U postgres
\c <数据库名>
查看所有表
\d
查看表明细
\d+<表名>
退出容器
\q
网友评论