首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用证书部署mongo-express (https)并编写

使用证书部署mongo-express (https)并编写
EN

Stack Overflow用户
提问于 2021-09-24 17:00:21
回答 1查看 414关注 0票数 0

是否有选项可以使用域CERT (使用HTTPS)部署带有坞组合的mongo-express服务?我有一个现有的网站与CERT (它使用HTTPS),我想集成mongo-express到它。所以我想把它部署为https://my_host:8081

我当前的测试docker-compose.yml文件工作得很好,但是它使用了HTTP协议(http://localhost:8081)。

当前测试的docker-compose.yml 文件:

代码语言:javascript
复制
version: "3.8"

services:
  db:
    container_name: mongo-dev
    hostname: mongo-dev
    image: mongo:4.2
    environment:
      - MONGO_INITDB_ROOT_USERNAME=admin
      - MONGO_INITDB_DATABASE=auth
      - MONGO_INITDB_ROOT_PASSWORD=pass
    networks:
      - mongo-compose-network
    ports:
      - '27017:27017'
    volumes:
      - ./data:/data/db

  mongo-express:
    container_name: mongo-express
    image: mongo-express:0.54.0
    depends_on:
      - db
    networks:
      - mongo-compose-network
    environment:
      - ME_CONFIG_MONGODB_SERVER=mongo-dev
      - ME_CONFIG_MONGODB_ADMINUSERNAME=admin
      - ME_CONFIG_MONGODB_ADMINPASSWORD=pass
      - ME_CONFIG_BASICAUTH_USERNAME=admin
      - ME_CONFIG_BASICAUTH_PASSWORD=tribes
    ports:
      - '8081:8081'
    restart: on-failure

networks:
  mongo-compose-network:
    driver: bridge

我知道这可以用NgInx来完成,但是可能有一个嵌入的选项。我已经阅读了文档以及GitHub问题/拉请求,但是我没有找到任何相关的主题。它是不可能的,在默认情况下,我是开放的一个基于NgInx的解决方案。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-09-24 20:42:00

我已经设法用1.0.0-alpha.4 Docker映像版本解决了我的问题。

docker-compose.yml**:**中的服务

代码语言:javascript
复制
  mongo-express:
    container_name: mongo-express
    hostname: mongo-express
    image: mongo-express:1.0.0-alpha.4
    depends_on:
      - mongo1
      - mongo2
    networks:
      - mongo_net
    volumes:
      - ./certs/domain.crt:/public.crt
      - ./certs/domain.key:/domain.key
    environment:
      - ME_CONFIG_MONGODB_URL=mongodb://admin:admin_pwd@mongo1:27017,mongo2:27017/?replicaSet=my-replica-set
      - ME_CONFIG_BASICAUTH_USERNAME=admin
      - ME_CONFIG_BASICAUTH_PASSWORD=admin_pwd
      - ME_CONFIG_OPTIONS_EDITORTHEME=night
      - ME_CONFIG_SITE_SSL_ENABLED=true
      - ME_CONFIG_MONGODB_ENABLE_ADMIN=true
      - ME_CONFIG_SITE_SSL_CRT_PATH=/public.crt
      - ME_CONFIG_SITE_SSL_KEY_PATH=/domain.key
    ports:
      - '8081:8081'
    restart: on-failure
    deploy:
      mode: replicated
      replicas: 1
      placement:
        constraints: [ node.role == manager ]
    logging:
      driver: "fluentd"
      options:
        fluentd-address: ${SYSTEM_HOST}:24224
        tag: mongo-express

有了上述服务配置,mongo-express将在https://localhost:8081站点上运行。

注:

管理功能在1.0.0-alpha.4latest Docker映像中不可用,即使ME_CONFIG_MONGODB_ENABLE_ADMIN参数设置为true。这个bug是已知的,并且在GitHub上已经有更多的报道了。例:https://github.com/mongo-express/mongo-express/issues/647。我在等修理..。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69318735

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档