docker 常用命令
bash
// 查看docker系统信息
docker info
// 显示 Docker 版本信息
docker version
docker ps // 查看正在运行的容器
docker ps -a // 查看所有已经创建的容器
docker images // 列出镜像列表
docker container ls // 效果同ps命令(加-a效果同)
// 详细信息
docker ps --no-trunc // 不截断输出
docker images --no-trunc // 不截断输出
// 删除命令
docker rm 删除容器
docker rmi 删除镜像
docker image prune -a
// 启动容器
docker start
// 停止容器
docker stop
// 重启容器
docker restart
// 创建一个新的容器并运行一个命令
docker run
docker run 详细参数
--name="" 指定容器名字进行容器管理,links特性需要使用名字
-e, --env=[] 指定环境变量,容器中可以使用该环境变量
-p, --publish=[] 指定容器暴露的端口
-v, --volume=[] 给容器挂载存储卷,挂载到容器的某个目录 eg:主机:容器
--privileged=false 指定容器是否为特权容器,特权容器拥有所有的capabilities
--restart="no" 指定容器停止后的重启策略:
no:容器退出时不重启
on-failure:容器故障退出(返回值非零)时重启
always:容器退出时总是重启
// 使用示例
docker run --name geoserver -e GEOSERVER_ADMIN_USER=admin -e GEOSERVER_ADMIN_PASSWORD=geoserver -v /home/geoserver/data_dir:/data_dir -p 8080:8080 -d kartoza/geoserver --restart="always"
mysql安装部署
bash
// 下载容器
docker pull mysql:latest
1、持久化方法一
// 创建持久化路径
mkdir -p /home/mysql/data
// 运行容器
docker run --privileged=true --name mysql -d -p 3306:3306 -v /home/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=mysql@2024 mysql
或
docker run --privileged=true --name mysql -d -p 3306:3306 -v mysql-data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=mysql@2024 mysql -v /home/mysql/conf/my.cnf:/etc/my.cnf
或
docker run --privileged=true --name mysql -d -p 13306:3306 -v /home/tsgis/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=Gsafety@2024 mysql:5.7.27 --lower-case-table-names=1
--lower-case-table-names=1 // 设置大小写不区分
2、持久化方法二
// 创建数据卷
docker volume create mysql-data
// 运行容器
docker run --privileged=true --name mysql -d -p 3306:3306 -v mysql-data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=mysql@2024 mysql
postgres安装部署
geoserver安装部署
bash
// 下载容器
docker pull kartoza/geoserver
// 创建持久化路径
mkdir -p /home/geoserver/data_dir
docker run --name geoserver -e GEOSERVER_ADMIN_USER=admin -e GEOSERVER_ADMIN_PASSWORD=geoserver -v /home/geoserver/data_dir:/data_dir -p 8080:8080 -d kartoza/geoserver
// 更新重启状态
docker update geoserver --restart=alway