PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

Създайте таблица в докер изображение на PostgreSQL

В скрипта docker-entrypoint.sh на официалното изображение на докер на postgres е написано:

psql+=( --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" )

        echo
        for f in /docker-entrypoint-initdb.d/*; do
            case "$f" in
                *.sh)     echo "$0: running $f"; . "$f" ;;
                *.sql)    echo "$0: running $f"; "${psql[@]}" < "$f"; echo ;;
                *.sql.gz) echo "$0: running $f"; gunzip -c "$f" | "${psql[@]}"; echo ;;
                *)        echo "$0: ignoring $f" ;;
            esac
            echo
done

Така че всеки .sql файл, който искате да изпълните във вашия докер образ, може просто да бъде поставен в тази папка. Така че моят докер файл изглежда така

FROM postgres:9.3
ENV POSTGRES_USER docker
ENV POSTGRES_PASSWORD docker
ENV POSTGRES_DB docker
ADD CreateDB.sql /docker-entrypoint-initdb.d/

И съдържанието на моя CreateDB.sql:

CREATE TABLE web_origins (
    client_id character varying(36) NOT NULL,
    value character varying(255)
);

Така че просто стартирам своя контейнер с:

docker run -d my-postgres

За да проверите:

docker exec -it 6250aee43d12 bash
[email protected]:/# psql -h localhost -p 5432 -U docker -d docker
psql (9.3.13)
Type "help" for help.

docker=# \c
You are now connected to database "docker" as user "docker".
docker=# \dt
           List of relations
 Schema |    Name     | Type  | Owner
--------+-------------+-------+--------
 public | web_origins | table | docker
(1 row)

Можете да намерите подробности за mysql тук в този блог .




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Django 1.8 Миграция с Postgres BDR 9.4.1

  2. Postgres - Изтеглете копие на цяла DB от отдалечен сървър към локална машина за разработка

  3. Моделиране на таблици на база данни потребител, група и членство

  4. Обработка на страниране с промяна на реда на сортиране

  5. Проблеми с производителността на групово вмъкване на PostgreSQL/JooQ при зареждане от CSV; как да подобря процеса?