系统基本信息:
操作系统:ubuntu 20.04.1 LTS
kernel:Linux 5.4.0-47-generic
Architecture:x86-64
1. docker安装postgres
安装简介:docker安装posggres再安装postgis扩展行不通,因为需要安装很多依赖,因此最终方案是docker直接安装postgis,使用镜像为kartoza/postgis:9.6-2.4
- docker search postgres
- docker pull postgres
- mkdir -p /opt/data/postgres/data 创建Postgresql容器外的数据映射目录
- docker run -i --rm postgres:12 cat /usr/share/postgresql/postgresql.conf.sample > /opt/data/postgres/postgres.conf 获取默认的配置文件并放到指定的目录下(/opt/data/postgres/)
- 修改postgres.conf配置文件
允许远程访问
listen_addresses = '*'
vim /etc/postgresql/12/main/pg_hba.conf
127.0.0.1/32改为0.0.0.0/0
# IPv4 local connections:
host all all 0.0.0.0/0 md5
# 默认是100,跟进自身需求进行修改
max_connections = 1000
- 运行postgres sql 容器,Postgres镜像默认的用户名为postgres
docker run -itd --name postgres12 -p 5432:5432 \
-e POSTGRES_PASSWORD=postgres \
--restart=always --privileged=true \
-v /opt/data/postgres/data/:/var/lib/postgresql/data \
-v /opt/data/postgres/postgres.conf:/etc/postgresql/postgresql.conf \
postgres:12 -c 'config_file=/etc/postgresql/postgresql.conf'
- 修改postgres的密码
# 进入容器命令行
docker exec -it postgres12 /bin/bash
# 连接数据库
psql -U postgres
# 修改当前用户密码
\password
# 输入新密码
# 再次确认密码
# 修改成功,退出
\q
# 修改失败退出后无密码也能进入,可能是pg_hda.conf里peer改为了trust,即本机登录不需要密码
- navicat premium 15连接
- create database "postgis";创建一个数据库
- 安装postgis时,需要安装gdal,proj4等,因此使用docker直接安装postgis+postgres
参考文章:docker 部署带postgis扩展的postgresql
docker pull kartoza/postgis:9.6-2.4
\\或者
docker build -t kartoza/postgis git://github.com/kartoza/docker-postgis
- 运行镜像
docker run -itd --name postgresql2 --restart always -e POSTGRES_USER=catnuko -e POSTGRES_PASSWORD=mounts -e ALLOW_IP_RANGE=0.0.0.0/0 -v /docker_root/postgresql11-docker:/var/lib/postgresql -v /4T/tmp:/tmp/tmp -p 55433:5432 -t kartoza/postgis:9.6-2.4
–name,指定创建的容器的名字postgresql ;
-e POSTGRES_PASSWORD=123456,设置环境变量,指定数据库的登录口令为123456
-e POSTGRES_USER='postgres 设置环境变量,指定数据库用户名为postgres
-p 54321:5432,端口映射将容器的5432端口映射到外部机器的54321端口;
-d kartoza/postgis:9.6-2.4,允许该容器以守护态(Daemonized)形式运行于后台
-e ALLOW_IP_RANGE=0.0.0.0/0,这个表示允许所有ip访问,如果不加,则非本机 ip 访问不了
-t 让docker分配一个伪终端(pseudo-tty)并绑定到该容器的标准输入上(这是为了在 交互模式下用户可以通过所创建的终端来输入命令)
- 修改字符编码,防止中文乱码
update pg_database set encoding = pg_char_to_encoding('UTF8') where datname = 'yourDbName'
- 进入终端
docker exec -it postgresql2 /bin/bash
2. Linux centos 安装node环境
linux安装node
3. linux centos 安装nginx
4. linux卸载mysql
https://blog.csdn.net/weixin_45525272/article/details/107774348
自动卸载mysql所有东西
sudo apt-get autoremove mysql* --purge
删除mysql的数据文件
sudo rm /var/lib/mysql/ -R
删除mysql的配置文件
sudo rm /etc/mysql/ -R
5. ubuntu 安装vmess
bash <(curl -s -L https://git.io/vTWOray.sh)
# 协议选第四个,其余配置默认就行
# 生成vmess开头的字符串,复制到客户端后从剪切板打开即可
vTWOray url
标签:postgresql,postgres,0.0,postgis,linux,软件,docker,安装
From: https://www.cnblogs.com/catnuko/p/16942524.html