Docker 学习制作第一个镜像

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u010916254/article/details/79088518

mac 下安装docker 

安装成功后运行docker daemon 

在命令行执行 docker info 可以查看当前docker 的状态

Containers: 0
 Running: 0
 Paused: 0
 Stopped: 0
Images: 2
Server Version: 17.12.0-ce
Storage Driver: aufs
 Root Dir: /var/lib/docker/aufs
 Backing Filesystem: extfs
 Dirs: 2
 Dirperm1 Supported: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local
 Network: bridge host macvlan null overlay
 Log: awslogs fluentd gcplogs gelf journald json-file logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 89623f28b87a6004d4b785663257362d1658a729
runc version: b2567b37d7b75eb4cf325b77297b140ea686ce8f
init version: 949e6fa
Security Options:
 seccomp
  Profile: default
Kernel Version: 4.9.60-linuxkit-aufs
Operating System: Docker for Mac
OSType: linux
Architecture: x86_64
CPUs: 2
Total Memory: 1.952GiB
Name: linuxkit-025000000001
ID: EPWI:4P5C:KBV6:2YHA:KPE5:VP57:BCUN:TSQE:FKIJ:ST3H:6YMY:YRZZ
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
HTTP Proxy: docker.for.mac.http.internal:3128
HTTPS Proxy: docker.for.mac.http.internal:3129
Registry: https://index.docker.io/v1/
Labels:
Experimental: false
Insecure Registries:
 127.0.0.0/8
Registry Mirrors:
 http://c80e66a4.m.daocloud.io/
Live Restore Enabled: false
此时docker中没用正在运行的任务,Images : 2 说明拥有两个镜像

执行 docker images 查看镜像 

REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
busybox             latest              f9b6f7f7b9d3        36 hours ago        1.14MB
centos              latest              ff426288ea90        8 days ago          207MB
编写一个Dockerfile ,如下

# 以centos镜像为基础镜像
From centos  

# 在镜像中执行创建目录 /home/test/
RUN mkdir -p /home/test/
# 进入目录
RUN cd /home/test/
# 将docker.sh 文件拷贝到镜像中的 /home/test/
ADD docker.sh /home/test/
# 增加执行权限
RUN chmod +x /home/test/docker.sh
# 容器启动时执行的操作
CMD /home/test/docker.sh

这个Dockerfile指明了基础的镜像,和将外部文件拷入镜像,以及使用该镜像生成容器时需执行的操作,docker.sh 是一个简单的shell 脚本,主要用于测试 ,如下

#!/bin/bash
while true
do
sleep 1;
curl '172.22.29.38:8088';
done
将这两个文件放入到同一目录下 ,到该目录执行

docker build -t docker-test .
命令执行结束出现

Successfully tagged docker-test:latest
说明镜像执行成功,执行 docker images ,出现

REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
docker-test         latest              a2eccd1c1018        44 seconds ago      207MB
busybox             latest              f9b6f7f7b9d3        36 hours ago        1.14MB
centos              latest              ff426288ea90        8 days ago          207MB
此时已经有docker-test 镜像,说明镜像已经制作成功啦


阅读更多
换一批

没有更多推荐了,返回首页