postgresql - 在 Dockerfile 中启用 Postgis 扩展 Postgres

标签 postgresql docker postgis

如何在 Dockerfile 中启用 Postgis 扩展? Postgres 安装已经开始工作

这是 Ubuntu 中的命令:

sudo -u postgres psql -c "CREATE EXTENSION postgis;"

我的 Dockerfile:

# Set the base image to Ubuntu
FROM ubuntu:14.04

# Update the repository sources list
RUN apt-get update -y

################## BEGIN INSTALLATION ######################
# Postgres with Postgis
# Install wget
RUN apt-get install wget -y

# Setup Postgres repository
RUN wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -

# Add Postgres repository
RUN sh -c "echo "deb http://apt.postgresql.org/pub/repos/apt/ trusty-pgdg main" >> /etc/apt/sources.list.d/postgresql.list"

# Update repository
RUN apt-get update -y

# Install Postgres with Postgis
RUN apt-get install postgresql-9.3-postgis-2.1 -y

# Change rights for start Postgresql
RUN chmod +x /etc/init.d/postgresql

# Start Postgresql
CMD service postgresql start && tail -F /var/lib/postgresql/data/serverlog

最佳答案

启用扩展的解决方案

# Enable Postgis
RUN service postgresql start \
&& sudo -u postgres psql -c "CREATE EXTENSION postgis;"
RUN service postgresql stop

关于postgresql - 在 Dockerfile 中启用 Postgis 扩展 Postgres,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37342879/

相关文章:

sql - 如何过滤分组查询结果集(SQL)

postgresql - 将递归 CTE 与 Ecto 结合使用

ruby - OS X 10.9 上 pg (0.16.0) 的捆绑安装错误

logging - 在 fluentd 中解析日志

ruby - ActiveRecord 子查询内部连接

postgresql - 运行 postgresql 函数/存储过程时出现语法错误

docker - IBM Cloud Functions - 使用基于 Docker 的操作存储敏感数据(环境变量)

docker - 通过docker exec sh -c “…”传递复杂的Shell脚本

java - 在 JTS 上处理几何端 WKBwriter 时出现的问题

java - org.postgresql.util.PSQLException : ERROR: function st_dwithin(geometry, double , double )不存在