首先我们需要有 Docker 环境,如果还没有可以参考 Docker 安装
制作 dockerfile 我们需要先了解我们的程序是如何运行起来的。
了解这些步骤後我们就开始建立 Dockerfile
在资料夹内部建立 Dockerfile 文件,并编辑
❯ touch Dockerfile
我们的 docker image 的基础 使用 node.js 环境,版本使用 LTS 也就是 14 版
FROM node:14
WORKDIR 指令可以指定工作目录,可以理解为 shell 的 cd 指令
WORKDIR /usr/src/app
现在我们的 docker 容器中已经有了 node 及 npm 的环境,接下来我们要安装我们应用程序所需要的依赖
COPY package*.json ./
RUN npm install
使用 COPY 来将本地文件复制到容器中 可以理解为 shell 的 cp
COPY . .
EXPOSE 通知 Docker 容器在运行时监听指定的网络端口。 也可以指定侦听TCP还是UDP,默认值为TCP
EXPOSE 8088
CMD为执行中的容器提供初始指令。 Dockerfile 中只能有一个 CMD指令,这里我们使用 node server.js 来启动我们的服务器
CMD [ "node", "server.js" ]
完整 Dockerfile 如下:
FROM node:14
WORKDIR /usr/src/app
COPY package*.json ./
RUN npm install
COPY . .
EXPOSE 8088
CMD [ "node", "server.js" ]
❯ touch .dockerignore
在 .dockerignore 中加入以下内容,我们不需要把这些东西也包到容器中
node_modules
npm-debug.log
完成 Dockerflie 後我们就可以来编译映像档,执行
❯ docker build . -t 1-on-1-webrtc
❯ docker run -d --name webrtc -p 8088:8088 1-on-1-webrtc
打开浏览器 https://localhost:8088/ 测试看看
完整内容可以参考 Github
❯ git clone https://github.com/tc3oliver/1-on-1-webrtc.git
❯ cd 1-on-1-webrtc
❯ git checkout docker
❯ docker build . -t 1-on-1-webrtc
❯ docker run -d --name webrtc -p 8088:8088 1-on-1-webrtc
>>: Day 27 RSpec 的 Mock & Stub
利用Day 13的collection public function getData(){ ret...
在昨天的Profile页面中,我们可以看到有照片的讯息,那我们今天主要要来做的就是~ 把手机相簿里...
有些功能性的标签不需要内文,写法如下: < b >粗体字< /b > b 标...
Python - Python Selenium 套件使用参考笔记 参考资料 Selenium-Py...
0x1 动机 只是很单纯的有兴趣,练习看API文件, 试着在最短时间规划并建立出一个目标, 就是一个...