質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Go

Go(golang)は、Googleで開発されたオープンソースのプログラミング言語です。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

Q&A

解決済

1回答

2503閲覧

DockerでGoの修正が反映されない

mimi_129

総合スコア63

Go

Go(golang)は、Googleで開発されたオープンソースのプログラミング言語です。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

0グッド

1クリップ

投稿2022/03/20 04:36

前提

タイトルの通りです。

Go+React+Docker+nginx+potsgreで個人開発を行なっていますが、
Goのコードの修正が反映されないです。

以前まで、
docker-compose build

docker-compose up -d
を行うと反映されていたのですが、
できなくなりました。

Dockerのrestartも意味なかったです。

Dockerのイメージを全削除して再度docker-compose buildを行うと反映されますが、
コードの修正の度に全てのコンテナ・イメージを作り直すのは時間がかかりすぎて辛いです。

Dockerのコンテナ上にコピーされていないのでは?と思い、
コンテナにSSHして対象のファイルをcatすると、
確かに自分が行ったコードの修正は反映されています。

ブラウザで確認しようとするとなぜ反映されていないかがよく分かりません。
ブラウザのキャッシュもDockerのビルドキャッシュも何度も消しましたが、
関係なかったです。

nginxでキャッシュを持ってしまっているのか?と思い、
nginxのコンテナ・イメージだけを作り直したりしてみましたが、
修正は反映されなかったです。

イメージ説明

version: '3' services: react: build: context: . dockerfile: react/Dockerfile container_name: react_container volumes: - ./:/usr/src/app command: sh -c "cd react/react-sample && yarn start" ports: - "3000:3000" go: build: context: . dockerfile: go/Dockerfile container_name: go_container ports: - 8000:8000 tty: true nginx: image: nginx container_name: nginx_container ports: - 80:80 environment: - TZ=Asia/Tokyo volumes: - ./nginx/nginx.conf:/etc/nginx/nginx.conf db: build: context: . dockerfile: postgres/Dockerfile container_name: db_container volumes: - ./postgres/data:/var/lib/postgresql/data ports: - 5433:5432 environment: - POSTGRES_USER - POSTGRES_PASSWORD - POSTGRES_DB
FROM golang:latest COPY ./go/app /app/go # 切り替え WORKDIR /app/go/handler RUN rm go.mod # 初期化 RUN go mod init github.com/XXX/XXX/go/app/handler # モジュール取得 RUN go get github.com/sclevine/agouti \ && go get github.com/labstack/echo/v4 \ && go get github.com/labstack/echo/v4/middleware \ && go get github.com/joho/godotenv \ && go get github.com/lib/pq \ && go get github.com/jinzhu/gorm # ビルド RUN go build -o handler . # 切り替え WORKDIR /app/go RUN rm go.mod # 初期化 RUN go mod init github.com/XXX/XXX # モジュール取得 RUN go get github.com/XXX/XXX/go/app/handler # ビルド RUN go build -o main . # unzip取得 RUN apt-get update && apt-get install -y unzip # chrome取得 RUN wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add \ && wget http://dl.google.com/linux/deb/pool/main/g/google-chrome-unstable/google-chrome-unstable_93.0.4577.18-1_amd64.deb \ && apt-get install -y -f ./google-chrome-unstable_93.0.4577.18-1_amd64.deb # chromedriver取得 ADD https://chromedriver.storage.googleapis.com/93.0.4577.15/chromedriver_linux64.zip /usr/local/go/bin/ RUN cd /usr/local/go/bin/ \ && unzip chromedriver_linux64.zip CMD ["/app/go/main"]

ここ確認した方が良いよとか何か回答に必要な情報等がありましたら補足していくので、
回答よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

コードの変更を検知してリビルドしてくれるツールを使うといいですよー

私は↓を使ってます。

投稿2022/04/03 14:15

madoka-t

総合スコア379

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問