Nodejs doker第2弾練習
5115 ワード
作成されたイメージがアプリケーションの実行中にアクセスできない理由
コンテナとブラウザのポートをマッピングする必要があります。
49160ポート、コンテナから8080にマッピングされます.
ランダムに出発地ポートに入れても大丈夫です.
5000:出発地任意ポート
8080:コンテナ内ポート
docker run -p 5000 : 8080 gusxoqkqh1/nodejs
[sudo] password for hongtae:
Server is running
http://localhost:5000/
指定WORKING DIRECTORY
画像にアクセスするときにルートディレクトリから検索されるように指示すると、WORKDIR/usr/src/appが情報を検索します。
sudo docker run -it gusxoqkqh1/nodejs ls
[sudo] password for hongtae:
Dockerfile dev lib mnt package-lock.json root server.js tmp
bin etc lib64 node_modules package.json run srv usr
boot home media opt proc sbin sys var
FROM node:10
COPY ././
RUN npm install express
WORKDIR/usr/src/app
CMD ["node","server.js"]
(base) hongtae@user:~/デスクトップ/nodejs-docker-app$sudo docker build-t 0 gusxoqkqh 1/nodejs./
sudo docker run -it gusxoqkqh1/nodejs sh
appディレクトリにない場合は自動生成され、既存のディレクトリで実行されますか?
sudo docker run -it gusxoqkqh1/nodejs sh
# ls
Dockerfile node_modules package-lock.json package.json server.js
# cd /
# ls
bin boot dev etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var
# cd /usr/src/app
# pwd
/usr/src/app
# ls
Dockerfile node_modules package-lock.json package.json server.js
アプリケーション・ソースの変更による再構築の課題の解決
-dデーモンバックグラウンドに移動して実行し、すぐに離れます.
sudo dockr run -d -p 5000:8000 gusxoqkqh1/nodejs
sudo docker ps
(base) hongtae@user:~/デスクトップ/nodejs-docker-app$sudo docker stop 5704 a 5 b 8 b 0 d 4
5704a5b8b0d4
(base) hongtae@user:~/デスクトップ/nodejs-docker-app$
こんにちは、方佳です。修正して再構築して実行してください。
sudo docker build -t 0gusxoqkqh1/nodejs ./
sudo docker run -d -p 4000:8080 gusxoqkqh1/nodejs
d477feebdce0fdd1074b61dc9652bbc195aafb7a12e9bc385a27364ee0ac2940
copy ././
なぜなら、現在のサーバです.js , package.jsonなどのすべてのファイルはcopyを使用してコンテナに置かれており、ソースが変更された場合はnpm installのインストールを続行する必要があります.
アプリケーション・ソースの変更時に効率的に構築する方法
このように一括する.jsonをコピーすると、ソースコードが変更されてもパッケージ化されます.jsonは修正されないのでnpm installは行いません.
FROM node:10
WORKDIR/usr/src/app
COPY package.json ./
RUN npm install express
COPY ././
CMD ["node","server.js"]
server.jsセクションの再変更
sudo docker build ./
Sending build context to Docker daemon 4.096kB
Step 1/6 : FROM node:10
---> 28dca6642db8
Step 2/6 : WORKDIR/usr/src/app
---> Using cache
---> 501a39617129
Step 3/6 : COPY package.json ./
---> Using cache
---> 083e78cc68a3
Step 4/6 : RUN npm install express
---> Using cache
---> 433d5a846ac1
Step 5/6 : COPY ././
---> e4bdb662d7ba
Step 6/6 : CMD ["node","server.js"]
---> Running in 2dd44668ecf2
Removing intermediate container 2dd44668ecf2
---> 7b3e105b1583
Successfully built 7b3e105b1583
これらの煩わしい仕事はdocvolumeという問題を解決することができます.
ドッキングコンテナでも、音量を利用して地元のものを見続け、何か修正があれば変更します.
変更/usr/src/app=workdirの場合に変更可能sudo docker run -d -p 4000:8080 -v /usr/src/app/node_modules -v ${pwd}:/usr/src/app gusxoqkqh1/nodejs
df9c2edfb81c6e5f163628557c04b530d243fbb8f947721d8c564b007f767342
だめだよ…?
オペレーティングシステム固有のpwdまたはcdエラーを参照してください.
Windows
49160ポート、コンテナから8080にマッピングされます.
ランダムに出発地ポートに入れても大丈夫です.
5000:出発地任意ポート
8080:コンテナ内ポート
docker run -p 5000 : 8080 gusxoqkqh1/nodejs
[sudo] password for hongtae:
Server is running
http://localhost:5000/
指定WORKING DIRECTORY
画像にアクセスするときにルートディレクトリから検索されるように指示すると、WORKDIR/usr/src/appが情報を検索します。
sudo docker run -it gusxoqkqh1/nodejs ls
[sudo] password for hongtae:
Dockerfile dev lib mnt package-lock.json root server.js tmp
bin etc lib64 node_modules package.json run srv usr
boot home media opt proc sbin sys var
FROM node:10
COPY ././
RUN npm install express
WORKDIR/usr/src/app
CMD ["node","server.js"]
(base) hongtae@user:~/デスクトップ/nodejs-docker-app$sudo docker build-t 0 gusxoqkqh 1/nodejs./
sudo docker run -it gusxoqkqh1/nodejs sh
appディレクトリにない場合は自動生成され、既存のディレクトリで実行されますか?
sudo docker run -it gusxoqkqh1/nodejs sh
# ls
Dockerfile node_modules package-lock.json package.json server.js
# cd /
# ls
bin boot dev etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var
# cd /usr/src/app
# pwd
/usr/src/app
# ls
Dockerfile node_modules package-lock.json package.json server.js
アプリケーション・ソースの変更による再構築の課題の解決
-dデーモンバックグラウンドに移動して実行し、すぐに離れます.
sudo dockr run -d -p 5000:8000 gusxoqkqh1/nodejs
sudo docker ps
(base) hongtae@user:~/デスクトップ/nodejs-docker-app$sudo docker stop 5704 a 5 b 8 b 0 d 4
5704a5b8b0d4
(base) hongtae@user:~/デスクトップ/nodejs-docker-app$
こんにちは、方佳です。修正して再構築して実行してください。
sudo docker build -t 0gusxoqkqh1/nodejs ./
sudo docker run -d -p 4000:8080 gusxoqkqh1/nodejs
d477feebdce0fdd1074b61dc9652bbc195aafb7a12e9bc385a27364ee0ac2940
copy ././
なぜなら、現在のサーバです.js , package.jsonなどのすべてのファイルはcopyを使用してコンテナに置かれており、ソースが変更された場合はnpm installのインストールを続行する必要があります.
アプリケーション・ソースの変更時に効率的に構築する方法
このように一括する.jsonをコピーすると、ソースコードが変更されてもパッケージ化されます.jsonは修正されないのでnpm installは行いません.
FROM node:10
WORKDIR/usr/src/app
COPY package.json ./
RUN npm install express
COPY ././
CMD ["node","server.js"]
server.jsセクションの再変更
sudo docker build ./
Sending build context to Docker daemon 4.096kB
Step 1/6 : FROM node:10
---> 28dca6642db8
Step 2/6 : WORKDIR/usr/src/app
---> Using cache
---> 501a39617129
Step 3/6 : COPY package.json ./
---> Using cache
---> 083e78cc68a3
Step 4/6 : RUN npm install express
---> Using cache
---> 433d5a846ac1
Step 5/6 : COPY ././
---> e4bdb662d7ba
Step 6/6 : CMD ["node","server.js"]
---> Running in 2dd44668ecf2
Removing intermediate container 2dd44668ecf2
---> 7b3e105b1583
Successfully built 7b3e105b1583
これらの煩わしい仕事はdocvolumeという問題を解決することができます.
ドッキングコンテナでも、音量を利用して地元のものを見続け、何か修正があれば変更します.
変更/usr/src/app=workdirの場合に変更可能sudo docker run -d -p 4000:8080 -v /usr/src/app/node_modules -v ${pwd}:/usr/src/app gusxoqkqh1/nodejs
df9c2edfb81c6e5f163628557c04b530d243fbb8f947721d8c564b007f767342
だめだよ…?
オペレーティングシステム固有のpwdまたはcdエラーを参照してください.
Windows
画像にアクセスするときにルートディレクトリから検索されるように指示すると、WORKDIR/usr/src/appが情報を検索します。
sudo docker run -it gusxoqkqh1/nodejs ls
[sudo] password for hongtae:
Dockerfile dev lib mnt package-lock.json root server.js tmp
bin etc lib64 node_modules package.json run srv usr
boot home media opt proc sbin sys var
FROM node:10
COPY ././
RUN npm install express
WORKDIR/usr/src/app
CMD ["node","server.js"]
(base) hongtae@user:~/デスクトップ/nodejs-docker-app$sudo docker build-t 0 gusxoqkqh 1/nodejs./
sudo docker run -it gusxoqkqh1/nodejs sh
appディレクトリにない場合は自動生成され、既存のディレクトリで実行されますか?
sudo docker run -it gusxoqkqh1/nodejs sh
# ls
Dockerfile node_modules package-lock.json package.json server.js
# cd /
# ls
bin boot dev etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var
# cd /usr/src/app
# pwd
/usr/src/app
# ls
Dockerfile node_modules package-lock.json package.json server.js
アプリケーション・ソースの変更による再構築の課題の解決
-dデーモンバックグラウンドに移動して実行し、すぐに離れます.
sudo dockr run -d -p 5000:8000 gusxoqkqh1/nodejs
sudo docker ps
(base) hongtae@user:~/デスクトップ/nodejs-docker-app$sudo docker stop 5704 a 5 b 8 b 0 d 4
5704a5b8b0d4
(base) hongtae@user:~/デスクトップ/nodejs-docker-app$
こんにちは、方佳です。修正して再構築して実行してください。
sudo docker build -t 0gusxoqkqh1/nodejs ./
sudo docker run -d -p 4000:8080 gusxoqkqh1/nodejs
d477feebdce0fdd1074b61dc9652bbc195aafb7a12e9bc385a27364ee0ac2940
copy ././
なぜなら、現在のサーバです.js , package.jsonなどのすべてのファイルはcopyを使用してコンテナに置かれており、ソースが変更された場合はnpm installのインストールを続行する必要があります.
アプリケーション・ソースの変更時に効率的に構築する方法
このように一括する.jsonをコピーすると、ソースコードが変更されてもパッケージ化されます.jsonは修正されないのでnpm installは行いません.
FROM node:10
WORKDIR/usr/src/app
COPY package.json ./
RUN npm install express
COPY ././
CMD ["node","server.js"]
server.jsセクションの再変更
sudo docker build ./
Sending build context to Docker daemon 4.096kB
Step 1/6 : FROM node:10
---> 28dca6642db8
Step 2/6 : WORKDIR/usr/src/app
---> Using cache
---> 501a39617129
Step 3/6 : COPY package.json ./
---> Using cache
---> 083e78cc68a3
Step 4/6 : RUN npm install express
---> Using cache
---> 433d5a846ac1
Step 5/6 : COPY ././
---> e4bdb662d7ba
Step 6/6 : CMD ["node","server.js"]
---> Running in 2dd44668ecf2
Removing intermediate container 2dd44668ecf2
---> 7b3e105b1583
Successfully built 7b3e105b1583
これらの煩わしい仕事はdocvolumeという問題を解決することができます.
ドッキングコンテナでも、音量を利用して地元のものを見続け、何か修正があれば変更します.
変更/usr/src/app=workdirの場合に変更可能sudo docker run -d -p 4000:8080 -v /usr/src/app/node_modules -v ${pwd}:/usr/src/app gusxoqkqh1/nodejs
df9c2edfb81c6e5f163628557c04b530d243fbb8f947721d8c564b007f767342
だめだよ…?
オペレーティングシステム固有のpwdまたはcdエラーを参照してください.
Windows
sudo docker build -t 0gusxoqkqh1/nodejs ./
sudo docker run -d -p 4000:8080 gusxoqkqh1/nodejs
d477feebdce0fdd1074b61dc9652bbc195aafb7a12e9bc385a27364ee0ac2940
copy ././
なぜなら、現在のサーバです.js , package.jsonなどのすべてのファイルはcopyを使用してコンテナに置かれており、ソースが変更された場合はnpm installのインストールを続行する必要があります.
アプリケーション・ソースの変更時に効率的に構築する方法
このように一括する.jsonをコピーすると、ソースコードが変更されてもパッケージ化されます.jsonは修正されないのでnpm installは行いません.
FROM node:10
WORKDIR/usr/src/app
COPY package.json ./
RUN npm install express
COPY ././
CMD ["node","server.js"]
server.jsセクションの再変更
sudo docker build ./
Sending build context to Docker daemon 4.096kB
Step 1/6 : FROM node:10
---> 28dca6642db8
Step 2/6 : WORKDIR/usr/src/app
---> Using cache
---> 501a39617129
Step 3/6 : COPY package.json ./
---> Using cache
---> 083e78cc68a3
Step 4/6 : RUN npm install express
---> Using cache
---> 433d5a846ac1
Step 5/6 : COPY ././
---> e4bdb662d7ba
Step 6/6 : CMD ["node","server.js"]
---> Running in 2dd44668ecf2
Removing intermediate container 2dd44668ecf2
---> 7b3e105b1583
Successfully built 7b3e105b1583
これらの煩わしい仕事はdocvolumeという問題を解決することができます.
ドッキングコンテナでも、音量を利用して地元のものを見続け、何か修正があれば変更します.
変更/usr/src/app=workdirの場合に変更可能sudo docker run -d -p 4000:8080 -v /usr/src/app/node_modules -v ${pwd}:/usr/src/app gusxoqkqh1/nodejs
df9c2edfb81c6e5f163628557c04b530d243fbb8f947721d8c564b007f767342
だめだよ…?
オペレーティングシステム固有のpwdまたはcdエラーを参照してください.
Windows
sudo docker build ./
Sending build context to Docker daemon 4.096kB
Step 1/6 : FROM node:10
---> 28dca6642db8
Step 2/6 : WORKDIR/usr/src/app
---> Using cache
---> 501a39617129
Step 3/6 : COPY package.json ./
---> Using cache
---> 083e78cc68a3
Step 4/6 : RUN npm install express
---> Using cache
---> 433d5a846ac1
Step 5/6 : COPY ././
---> e4bdb662d7ba
Step 6/6 : CMD ["node","server.js"]
---> Running in 2dd44668ecf2
Removing intermediate container 2dd44668ecf2
---> 7b3e105b1583
Successfully built 7b3e105b1583
これらの煩わしい仕事はdocvolumeという問題を解決することができます.
ドッキングコンテナでも、音量を利用して地元のものを見続け、何か修正があれば変更します.
変更/usr/src/app=workdirの場合に変更可能
sudo docker run -d -p 4000:8080 -v /usr/src/app/node_modules -v ${pwd}:/usr/src/app gusxoqkqh1/nodejs
df9c2edfb81c6e5f163628557c04b530d243fbb8f947721d8c564b007f767342
だめだよ…?
オペレーティングシステム固有のpwdまたはcdエラーを参照してください.
Windows
Linux = ubuntu
(sudo) docker run -d -p 4000:8080 -v/usr/src/app/node_modules -v ${pwd}:/usr/src/app gusxoqkqh1/nodejs
その他(Mac含む)
docker run -d -p 4000:8080 -v/usr/src/app/node_modules -v $(pwd):/usr/src/app gusxoqkqh1/nodejs
docker run -d -p 4000:8080 -v/usr/src/app/node_modules -v ${PWD}:/usr/src/app gusxoqkqh1/nodejs
Reference
この問題について(Nodejs doker第2弾練習), 我々は、より多くの情報をここで見つけました https://velog.io/@hong_tae/nodejs-도커-연습-2탄テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol