使用Dockerfile克隆私人git gem repo的最佳方法

这是我的Dockerfile:

# Dockerfile FROM rails:onbuild 

docker-compose.yml就是这样的:

 db: image: postgres web: build: . volumes: - .:/usr/src/app ports: - "3001:3001" links: - db 

所以当我运行docker-compose run web rake db:create db:migrate ,它无法克隆私人git存储库。 所以我的问题是什么是使用Dockerfile克隆私人git回购的最好方法。 谢谢!

我不知道如何使用Doockerflieconfiguration获取私人gem或者添加命令。

也许我们必须使用Personal Access Token授予访问权限。 这里是步骤:

  • 为您的私人gem生成Personal Access Token
  • 使用这种模式的url定义gem的git位置

    gem 'your_private_gem', git: "https://your_token:x-oauth-basic@github.com/org/your_private_gem.git"

  • 也许为了使它更安全,你可以使用一些.env文件(gem'dotenv')来定义这个令牌:

    gem 'your_private_gem', git: "https://#{ENV[GITHUB_TOKEN]}:x-oauth-basic@github.com/org/your_private_gem.git"

希望这会有所帮助。 或者我正在寻找新的更安全的方式,所以遵循这个问题。 干杯!