Docker 制作镜像

容器转镜像
docker commit      
Dockerfile
FROM
WORKDIR
COPY / ADD
RUN
EXPOSE
CMD
docker build . –t
docker alpine , docker slim
 

方法一:在powershell里面执行docker 命令行。创建镜像。

PS C:\Users\psmax> docker images
getting-started          ibm       6427019aa127   35 hours ago   93.5MB
node                     taobao    f6ab01ff2c65   35 hours ago   936MB
node                     latest    d2850632b602   7 days ago     936MB
ubuntu                   latest    26b77e58432b   2 weeks ago    72.9MB
docker/getting-started   latest    3ba8f2ff0727   4 weeks ago    27.9MB
alpine/git               latest    a939554ad0d0   8 weeks ago    25.1MB
PS C:\Users\psmax> docker run -it node:latest /bin/sh
# yarn
yarn install v1.22.5
info No lockfile found.
[2/4] Fetching packages...
[3/4] Linking dependencies...
[4/4] Building fresh packages...

success Saved lockfile.
Done in 0.08s.
yarn config v1.22.5
success Set "registry" to true.
Done in 0.11s.
true
PS C:\Users\psmax>
PS C:\Users\psmax> docker run -d -p 80:80 docker/getting-started
5758d52a173fb56e25863b2e0b73e2d27c5cfce8d110ae1231d717e41cfdf031
PS C:\Users\psmax> docker run -d -p 80:80 docker/getting-started
562f734d58832fafe53ac4181e1e671c902f1e4c57d33a73223aefd8e0e4e11c
docker: Error response from daemon: driver failed programming external connectivity on endpoint fervent_spence (b5882a4e03e78cc0a49b30866fc5fcf460dbcca3cb1a52c58fde0ba51243c8fe): Bind for 0.0.0.0:80 failed: port is already allocated.
PS C:\Users\psmax> docker run -it node:latest /bin/sh
# yarn config set registry https://registry.npm.taobao.org/                           #更改yarn源
success Set "registry" to "https://registry.npm.taobao.org/".
Done in 0.07s.
# yarn config get registry
https://registry.npm.taobao.org/
# exit
PS C:\Users\psmax> docker commit
"docker commit" requires at least 1 and at most 2 arguments.
See 'docker commit --help'.

Usage:  docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]

Create a new image from a container's changes
PS C:\Users\psmax> docker ps -a
CONTAINER ID   IMAGE         COMMAND                  CREATED         STATUS                          PORTS     NAMES
bbee388d6540   node:latest   "docker-entrypoint.s…"   2 minutes ago   Exited (0) About a minute ago             ecstatic_nash
PS C:\Users\psmax> docker commit bbee38 node:taobao
sha256:f66224e216c446526e73d7814e19ee4e3cebbc8a6fe2543ad6adf86287536390
PS C:\Users\psmax> docker images
REPOSITORY               TAG       IMAGE ID       CREATED          SIZE
node                     taobao    f66224e216c4   20 seconds ago   936MB
getting-started          ibm       6427019aa127   36 hours ago     93.5MB
<none>                   <none>    f6ab01ff2c65   36 hours ago     936MB
node                     latest    d2850632b602   7 days ago       936MB
mysql                    latest    cbe8815cbea8   7 days ago       546MB
ubuntu                   latest    26b77e58432b   2 weeks ago      72.9MB
docker/getting-started   latest    3ba8f2ff0727   4 weeks ago      27.9MB
alpine/git               latest    a939554ad0d0   8 weeks ago      25.1MB

首先将容器里的启动镜像删除之后再启动。这样就可以看到这个registry被设置为taobao.
PS C:\Users\psmax> docker run -it node:taobao /bin/sh
# yarn config get registry
https://registry.npm.taobao.org/
#

 

方法二: 使用工具Visual Studio Code对Dockerfile进行编辑。

Dockerfile

FROM node:12-alpine

RUN yarn config set registry https://registry.npm.taobao.org/

WORKDIR /app

COPY . .

RUN yarn install --production

CMD ["node", "src/index.js"]

以后我们创建dockerfile,我们可以在docker hub上参考。例如:

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值