部署具有dockerized前端和dockerise后端映像的应用程序

时间:2020-09-03 04:40:10

标签: reactjs docker go docker-compose dockerfile

我目前正在使用以Reactjs为前端,以Golang为后端的应用程序。 我的文件夹结构和docker-compose.yml folder structure如下 docker-compose.yml。我的应用程序在本地运行良好。我希望将其部署到一个免费的托管站点中。我想部署后端dockerized映像并获取其链接,并在reactjs前端文件中使用它,并对dockerise前端和还要部署前端,以便我可以从任何地方访问它。 请帮助我。谢谢!

1 个答案:

答案 0 :(得分:0)

您可以使用docker hub或自托管的docker registry

您可以使用以下docker-compose命令

首先,构建您的Docker映像

docker-compose -f docker-compose.yml up --build -d

然后,为图像设置标签。 (我假设您使用hub-username在docker hub进行了注册,并创建了一个名为server-repo的存储库)

标记名可以是任何东西,我使用的是v1.0.0之类的应用程序版本

docker tag go-docker:latest hub-username/server-repo:v1.0.0

最后,将其推送到docker hub

docker push hub-username/server-repo:v1.0.0

在您的服务器中,您可以使用如下所示的docker-compose文件:

version: "3.7"

services:

  go-docker:
    image: hub-username/server-repo:v1.0.0
    container_name: go-api
    restart: always

如果要使用自托管的Docker注册表而不是Docker Hub,唯一的变化是您应该在使用repo-name的所有位置(以及docker tag和push命令)在注册表地址前添加repo-name就像在您的服务器docker-compose文件中一样),

registry.mydomain.io:5000/registry-username/server-repo:v1.0.0