在docker-compose中使用bash命令设置Rethinkdb

时间:2018-12-10 22:04:39

标签: docker-compose rethinkdb

我正在使用rethinkdb.NET Core App旁边运行docker-compose。 有什么办法可以为rethinkdb设置2个表以及一些二级索引吗? 可以直接使用bash命令配置Rethinkdb(设置dbtable)吗?

docker-compose

  version: "3.3"
  services:
      rethink:
        restart: always
        image: rethinkdb:2.3.6
        container_name: rethink0
        ports:   //i want to create a db,a table and a secondary index after set up
          - 8080:8080
        networks:
          - ret-net

      mp:
        build: ./mpserver
        image: mp
        restart: always
        container_name: mp0
        depends_on:
          - rethink
        ports:
          - 8203:8202
        networks:
          - ret-net
  networks:
   ret-net:

1 个答案:

答案 0 :(得分:1)

您最好的选择是设置python驱动程序,然后您可以将命令作为bash脚本运行

sudo pip install rethinkdb
import rethinkdb as r
r.connect('localhost',28015).repl()
r.db_create('test').run()
r.db('test').table_create('myTable').run()

您还可以考虑构建包含此驱动程序的docker映像,我认为官方映像不包含该驱动程序。

我无法自信地告诉您如何构建这样的docker容器,但是基于this description,它应该类似于:

FROM library/rethinkdb
apt-get update && 
apt-get install -y python-pip &&
RUN pip install rethinkdb

..并且您可以从docker容器内部执行创建命令

docker exec -it <container name> <command>