# node
FROM node:14.18-alpine
# mirror
RUN echo 'http://mirrors.aliyun.com/alpine/v3.5/main' > /etc/apk/repositories
RUN echo 'http://mirrors.aliyun.com/alpine/v3.5/community' >>/etc/apk/repositories
# timeZone
RUN apk update && apk add tzdata
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
RUN echo "Asia/Shanghai" > /etc/timezone
WORKDIR /app
COPY . /app
# npm
RUN yarn config set registry 'https://registry.npm.taobao.org' -g
RUN yarn config set sass_binary_site 'https://npm.taobao.org/mirrors/node-sass/' -g
RUN yarn install --network-timeout 600000
RUN yarn build
# script
CMD [ "yarn", "start" ]
docker image build -t myimage:v1 .
注意最后有一个点不能省略
docker run -d -p 3000:3000 -it myimage:v1
-d 表示后台运行. 容器内 3000 端口映射到容器外 3000 端口.
运行指定 CONTAINER ID 的容器
docker start 684f23ec4ea9
docker images
删除指定 IMAGE ID 的镜像
docker rmi 597d72732244
docker ps -a
不加-a 只列出运行中的容器
删除指定 CONTAINER ID 的容器
docker rm dcf9dfaf355d
docker exec -it 4637c19a2d3a sh
或者
docker exec -it 4637c19a2d3a /bin/sh
或者
docker exec -it 4637c19a2d3a bash
或者
docker exec -it 4637c19a2d3a /bin/bash
输入 exit 退出容器
例如 git 更新:
git pull
容器修改后即更新
sudo mkdir -p /etc/docker
sudo vi /etc/docker/daemon.json
写入以下内容
{
"registry-mirrors": ["https://6kx4zyno.mirror.aliyuncs.com"]
}
网易 docker 加速镜像
sudo systemctl daemon-reload
sudo systemctl restart docker
windows:
Net stop com.docker.service
Net start com.docker.service