GVKun编程网logo

【Docker实战之入门】构建docker镜像[docker build -t csphere/centos:7.1 .](构建docker镜像的方式)

15

在这里,我们将给大家分享关于【Docker实战之入门】构建docker镜像[dockerbuild-tcsphere/centos:7.1.]的知识,让您更了解构建docker镜像的方式的本质,同时也

在这里,我们将给大家分享关于【Docker实战之入门】构建docker镜像[docker build -t csphere/centos:7.1 .]的知识,让您更了解构建docker镜像的方式的本质,同时也会涉及到如何更有效地167 docker docker构建nginx容器系列问题 docker registry docker run docker toolbo、b/w docker-compose build vs docker build生成的docker镜像有什么区别?、docker history 查看docker镜像构建过程 还原dockerfile 查看启动参数、Docker Spring boot 项目使用 docker-maven-plugin 执行mvn docker:build 打成镜像的内容。

本文目录一览:

【Docker实战之入门】构建docker镜像[docker build -t csphere/centos:7.1 .](构建docker镜像的方式)

【Docker实战之入门】构建docker镜像[docker build -t csphere/centos:7.1 .](构建docker镜像的方式)

<table><tr>
<td><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264

docker build   rootOptimus centos7 Sending build context to Docker daemon kB Sending build context to Docker daemon Step : FROM centos:centos7.1.1503 centos7.1.1503: Pulling from centos 3690474eb5b4: Pull a309b0544dad: Pull 879c6d07c60e: Pull Digest: sha256:a5ee8f1c4fed19705c1b72549f4f87c29c5f1e98cf171be3534c7cc54946fd30 Status: Downloaded newer image centos:centos7.1.1503  --- 879c6d07c60e Step : MAINTAINER Carson,C.J.Zeong zcynicescale.com  --- Running 891af95c7810  --- b70d01adc347 Removing intermediate container 891af95c7810 Step : ENV TZ  --- Running 9dd5bbb1a826  --- 2cf0185366a0 Removing intermediate container 9dd5bbb1a826 Step : ENV TERM xterm  --- Running 6f225ef70728  --- 0e4c8be3214c Removing intermediate container 6f225ef70728 Step : ADD aliyun-mirror.repo etcyum.repos.dCentOS-Base.repo  --- 7b9fbd3c90cb Removing intermediate container c3b379247647 Step : ADD aliyun-epel.repo etcyum.repos.depel.repo  --- d8a4c78c688a Removing intermediate container 5b0494f0d09e Step : RUN curl vim-enhanced yum-utils net-tools rsync     gcc-c++ omake cmake logrotate python-devel libpng-devel libjpeg-devel     =epel pwgen python-pip     all  --- Running 48f1ccf56eb5 Loaded plugins: fastestmirror Determining fastest mirrors Resolving Dependencies -- Running transaction check --- Package bzip2.x86_64 :1.0.6-.el7 will be installed -- Processing Dependency: bzip2-libs = 1.0.6-.el7 package: bzip2-1.0.6-.el7.x86_64 --- Package curl.x86_64 :7.29.0-.el7 will be updated --- Package curl.x86_64 :7.29.0-.el7 will be an update -- Processing Dependency: libcurl = 7.29.0-.el7 package: curl-7.29.0-.el7.x86_64 --- Package hostname.x86_64 :-.el7 will be installed --- Package man-db.x86_64 :2.6.3-.el7 will be installed -- Processing Dependency: libpipeline.so.164bit package: man-db-2.6.3-.el7.x86_64 --- Package net-tools.x86_64 :-0.22.20131004git.el7 will be installed --- Package passwd.x86_64 :-.el7 will be installed --- Package rsync.x86_64 :3.0.9-.el7 will be installed --- Package sudo.x86_64 :1.8.19p2-.el7_4 will be installed --- Package tar.x86_64 :-.el7 will be installed --- Package unzip.x86_64 :-.el7 will be installed --- Package vim-enhanced.x86_64 :7.4.160-.el7 will be installed -- Processing Dependency: vim-common = :7.4.160-.el7 package: :vim-enhanced-7.4.160-.el7.x86_64 -- Processing Dependency: :MODULE_COMPAT_5.16.3 package: :vim-enhanced-7.4.160-.el7.x86_64 -- Processing Dependency: libperl.so64bit package: :vim-enhanced-7.4.160-.el7.x86_64 -- Processing Dependency: libgpm.so.264bit package: :vim-enhanced-7.4.160-.el7.x86_64 --- Package wget.x86_64 :-.el7 will be installed --- Package yum-utils.noarch :1.1.31-.el7 will be installed -- Processing Dependency: = 3.4.3- package: yum-utils-1.1.31-.el7.noarch -- Processing Dependency: python-kitchen package: yum-utils-1.1.31-.el7.noarch -- Processing Dependency: libxml2-python package: yum-utils-1.1.31-.el7.noarch -- Running transaction check --- Package bzip2-libs.x86_64 :1.0.6-.el7 will be updated --- Package bzip2-libs.x86_64 :1.0.6-.el7 will be an update --- Package gpm-libs.x86_64 :1.20.7-.el7 will be installed --- Package libcurl.x86_64 :7.29.0-.el7 will be updated --- Package libcurl.x86_64 :7.29.0-.el7 will be an update --- Package libpipeline.x86_64 :1.2.3-.el7 will be installed --- Package libxml2-python.x86_64 :2.9.1-.el7_2.3 will be installed -- Processing Dependency: libxml2 = 2.9.1-.el7_2.3 package: libxml2-python-2.9.1-.el7_2.3.x86_64 --- Package perl.x86_64 :5.16.3-.el7 will be installed -- Processing Dependency: Socket = package: :perl-5.16.3-.el7.x86_64 -- Processing Dependency: Scalar::Util = package: :perl-5.16.3-.el7.x86_64 -- Processing Dependency: perl-macros package: :perl-5.16.3-.el7.x86_64 -- Processing Dependency: threads::shared package: :perl-5.16.3-.el7.x86_64 -- Processing Dependency: threads package: :perl-5.16.3-.el7.x86_64 -- Processing Dependency: constant package: :perl-5.16.3-.el7.x86_64 -- Processing Dependency: Time::Local package: :perl-5.16.3-.el7.x86_64 -- Processing Dependency: Time::HiRes package: :perl-5.16.3-.el7.x86_64 -- Processing Dependency: Storable package: :perl-5.16.3-.el7.x86_64 -- Processing Dependency: Socket package: :perl-5.16.3-.el7.x86_64 -- Processing Dependency: Scalar::Util package: :perl-5.16.3-.el7.x86_64 -- Processing Dependency: Pod::Simple::XHTML package: :perl-5.16.3-.el7.x86_64 -- Processing Dependency: Pod::Simple::Search package: :perl-5.16.3-.el7.x86_64 -- Processing Dependency: Getopt::Long package: :perl-5.16.3-.el7.x86_64 -- Processing Dependency: Filter::Util::Call package: :perl-5.16.3-.el7.x86_64 -- Processing Dependency: File::Temp package: :perl-5.16.3-.el7.x86_64 -- Processing Dependency: File::Spec::Unix package: :perl-5.16.3-.el7.x86_64 -- Processing Dependency: File::Spec::Functions package: :perl-5.16.3-.el7.x86_64 -- Processing Dependency: File::Spec package: :perl-5.16.3-.el7.x86_64 -- Processing Dependency: File::Path package: :perl-5.16.3-.el7.x86_64 -- Processing Dependency: Exporter package: :perl-5.16.3-.el7.x86_64 -- Processing Dependency: Cwd package: :perl-5.16.3-.el7.x86_64 -- Processing Dependency: Carp package: :perl-5.16.3-.el7.x86_64 --- Package perl-libs.x86_64 :5.16.3-.el7 will be installed --- Package python-kitchen.noarch :1.1.1-.el7 will be installed -- Processing Dependency: python-chardet package: python-kitchen-1.1.1-.el7.noarch --- Package vim-common.x86_64 :7.4.160-.el7 will be installed -- Processing Dependency: vim-filesystem package: :vim-common-7.4.160-.el7.x86_64 --- Package yum.noarch :3.4.3-.el7.centos will be updated --- Package yum.noarch :3.4.3-.el7.centos will be an update -- Processing Dependency: rpm = 4.11.3- package: yum-3.4.3-.el7.centos.noarch -- Processing Dependency: python-urlgrabber = - package: yum-3.4.3-.el7.centos.noarch -- Running transaction check --- Package libxml2.x86_64 :2.9.1-.el7_0.1 will be updated --- Package libxml2.x86_64 :2.9.1-.el7_2.3 will be an update --- Package perl-Carp.noarch :-.el7 will be installed --- Package perl-Exporter.noarch :-.el7 will be installed --- Package perl-File-Path.noarch :-.el7 will be installed --- Package perl-File-Temp.noarch :0.23.01-.el7 will be installed --- Package perl-Filter.x86_64 :-.el7 will be installed --- Package perl-Getopt-Long.noarch :-.el7 will be installed -- Processing Dependency: Pod::Usage = package: perl-Getopt-Long--.el7.noarch -- Processing Dependency: Text::ParseWords package: perl-Getopt-Long--.el7.noarch --- Package perl-PathTools.x86_64 :-.el7 will be installed --- Package perl-Pod-Simple.noarch :-.el7 will be installed -- Processing Dependency: Pod::Escapes = package: :perl-Pod-Simple--.el7.noarch -- Processing Dependency: Encode package: :perl-Pod-Simple--.el7.noarch --- Package perl-Scalar-List-Utils.x86_64 :-.el7 will be installed --- Package perl-Socket.x86_64 :-.el7 will be installed --- Package perl-Storable.x86_64 :-.el7 will be installed --- Package perl-Time-HiRes.x86_64 :-.el7 will be installed --- Package perl-Time-Local.noarch :-.el7 will be installed --- Package perl-constant.noarch :-.el7 will be installed --- Package perl-macros.x86_64 :5.16.3-.el7 will be installed --- Package perl-threads.x86_64 :-.el7 will be installed --- Package perl-threads-shared.x86_64 :-.el7 will be installed --- Package python-chardet.noarch :2.2.1-.el7_1 will be installed --- Package python-urlgrabber.noarch :-.el7 will be updated --- Package python-urlgrabber.noarch :-.el7 will be an update --- Package rpm.x86_64 :4.11.1-.el7 will be updated -- Processing Dependency: rpm = 4.11.1-.el7 package: rpm-python-4.11.1-.el7.x86_64 -- Processing Dependency: rpm = 4.11.1-.el7 package: rpm-libs-4.11.1-.el7.x86_64 --- Package rpm.x86_64 :4.11.3-.el7 will be an update --- Package vim-filesystem.x86_64 :7.4.160-.el7 will be installed -- Running transaction check --- Package perl-Encode.x86_64 :-.el7 will be installed --- Package perl-Pod-Escapes.noarch :-.el7 will be installed --- Package perl-Pod-Usage.noarch :-.el7 will be installed -- Processing Dependency: Pod::Text = package: perl-Pod-Usage--.el7.noarch -- Processing Dependency: perl-Pod-Perldoc package: perl-Pod-Usage--.el7.noarch --- Package perl-Text-ParseWords.noarch :-.el7 will be installed --- Package rpm-libs.x86_64 :4.11.1-.el7 will be updated -- Processing Dependency: rpm-libsx86- = 4.11.1-.el7 package: rpm-build-libs-4.11.1-.el7.x86_64 --- Package rpm-libs.x86_64 :4.11.3-.el7 will be an update --- Package rpm-python.x86_64 :4.11.1-.el7 will be updated --- Package rpm-python.x86_64 :4.11.3-.el7 will be an update -- Running transaction check --- Package perl-Pod-Perldoc.noarch :-.el7 will be installed -- Processing Dependency: parent package: perl-Pod-Perldoc--.el7.noarch -- Processing Dependency: HTTP::Tiny package: perl-Pod-Perldoc--.el7.noarch --- Package perl-podlators.noarch :2.5.1-.el7 will be installed --- Package rpm-build-libs.x86_64 :4.11.1-.el7 will be updated --- Package rpm-build-libs.x86_64 :4.11.3-.el7 will be an update -- Running transaction check --- Package perl-HTTP-Tiny.noarch :-.el7 will be installed --- Package perl-parent.noarch :-.el7 will be installed -- Finished Dependency Resolution   Dependencies Resolved   ================================================================================  Package                  Arch     Version                      Repository                                                                            Size ================================================================================ Installing:                      x86_64   1.0.6-.el7                 base       k                   x86_64   -.el7                   base       k  man-db                   x86_64   2.6.3-.el7                  base       k  net-tools                x86_64   -0.22.20131004git.el7     base       k                     x86_64   -.el7                   base       k  rsync                    x86_64   3.0.9-.el7                 base       k                       x86_64   1.8.19p2-.el7_4            updates   M                        x86_64   :-.el7                base       k                      x86_64   -.el7                   base       k  vim-enhanced             x86_64   :7.4.160-.el7              base       M                       x86_64   -.el7                  base       k  yum-utils                noarch   1.1.31-.el7                base       k Updating:  curl                     x86_64   7.29.0-.el7                base       k Installing dependencies:  gpm-libs                 x86_64   1.20.7-.el7                 base       k  libpipeline              x86_64   1.2.3-.el7                  base       k  libxml2-python           x86_64   2.9.1-.el7_2.3              base       k                       x86_64   :5.16.3-.el7             base       M  perl-Carp                noarch   -.el7                 base       k  perl-Encode              x86_64   -.el7                   base       M  perl-Exporter            noarch   -.el7                   base       k  perl-File-Path           noarch   -.el7                   base       k  perl-File-Temp           noarch   0.23.01-.el7                base       k  perl-Filter              x86_64   -.el7                   base       k  perl-Gpt-Long         noarch   eto-.el7                   base       k  perl-HTTP-Tiny           noarch   -.el7                  base       k  perl-PathTools           x86_64   -.el7                   base       k  perl-Pod-Escapes         noarch   :-.el7               base       k  perl-Pod-Perldoc         noarch   -.el7                   base       k  perl-Pod-Simple          noarch   :-.el7                 base       k  perl-Pod-Usage           noarch   -.el7                   base       k  perl-Scalar-List-Utils   x86_64   -.el7                 base       k  perl-Socket              x86_64   -.el7                  base       k  perl-Storable            x86_64   -.el7                   base       k  perl-Text-ParseWords     noarch   -.el7                   base       k  perl-Time-HiRes          x86_64   :-.el7               base       k  perl-Time-Local          noarch   -.el7                 base       k  perl-constant            noarch   -.el7                   base       k  perl-libs                x86_64   :5.16.3-.el7             base       k  perl-macros              x86_64   :5.16.3-.el7             base       k  perl-parent              noarch   :-.el7              base       k  perl-podlators           noarch   2.5.1-.el7                  base       k  perl-threads             x86_64   -.el7                   base       k  perl-threads-shared      x86_64   -.el7                   base       k  python-chardet           noarch   2.2.1-.el7_1                base       k  python-kitchen           noarch   1.1.1-.el7                  base       k  vim-common               x86_64   :7.4.160-.el7              base       M  vim-filesy           x86_64   stem:7.4.160-.el7              base       k Updating dependencies:  bzip2-libs               x86_64   1.0.6-.el7                 base       k  libcurl                  x86_64   7.29.0-.el7                base       k  libxml2                  x86_64   2.9.1-.el7_2.3              base       k  python-urlgrabber        noarch   -.el7                   base       k  rpm                      x86_64   4.11.3-.el7                base       M  rpm-build-libs           x86_64   4.11.3-.el7                base       k  rpm-libs                 x86_64   4.11.3-.el7                base       k  rpm-python               x86_64   4.11.3-.el7                base       k                        noarch   3.4.3-.el7.centos         base       M   Transaction Summary ================================================================================ Install   Packages + Dependent packages Upgrade   Package  + Dependent packages   Total download size: M Downloading packages: Delta RPMs abled because disusrbinapplydeltarpm not installed. warning: varcacheyumx86_64basepackagesbzip2-libs-1.0.6-.el7.x86_64.rpm: Header V3 RSASHA256 Signature,key ID f4a80eb5: NOKEY Public key bzip2-libs-1.0.6-.el7.x86_64.rpm is not installed Public key sudo-1.8.19p2-.el7_4.x86_64.rpm is not installed Total                                               kBs   MB  02:     Retrieving key from http:mirrors.aliyun.comcentosRPM-GPG-KEY-CentOS- Importing GPG key 0xF4A80EB5:  Userid     : " Successfully installed meld3-1.0.2 supervisor-3.3.3 You are using pip version 8.1.2,however version 9.0.1 is available. You should consider upgrading via the command.  --- 692fa8d7b45d Removing intermediate container a087bc9ad658 Step : ADD supervisord.conf etcsupervisord.conf  --- 32405ba41d7c Removing intermediate container 55c9a6ac3453 Step : RUN etcsupervisor.conf.d     varlogsupervisor  --- Running 68a6e7e7ee7d  --- 38a98d88b5af Removing intermediate container 68a6e7e7ee7d Step : EXPOSE  --- Running f6654b10b06a  --- e96c30fe5f31 Removing intermediate container f6654b10b06a Step : ENTRYPOINT usrbinsupervisord etcsupervisord.conf  --- Running fc80a3ce0380  --- fd1f7619e63e Removing intermediate container fc80a3ce0380 Successfully built fd1f7619e63e rootOptimus centos7

总结

以上是为你收集整理的全部内容。

小编【Docker实战之入门】构建docker镜像[docker build -t csphere/centos:7.1 .]

如果觉得网站内容还不错,欢迎将推荐给好友。

小编小编网站

167 docker docker构建nginx容器系列问题 docker registry docker run docker toolbo

167 docker docker构建nginx容器系列问题 docker registry docker run docker toolbo

docker构建nginx容器系列问题


background : 最近为小伙伴们筹划docker系列的技术分享,研究了一会docker相关技术, 在此记录一下构建nginx容器时候的坑

1.nginx服务器根目录问题

docker 官方镜像提供的nginx基于debian/jessie平台,其文件结构和ubuntu中的nginx中并不相同

eg:

run一个niginx容器

<span>//80端口被占用,so...</span>
$ sudo docker run <span>-it</span><span>-p</span><span>800</span>:<span>800</span> nginx
$ sudo docker ps 

CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                                   NAMES
<span>1801</span>a32aab54        nginx               <span>"nginx -g ''daemon off"</span><span>2</span> minutes ago       Up <span>2</span> minutes        <span>80</span>/tcp, <span>443</span>/tcp, <span>0.0</span><span>.0</span><span>.0</span>:<span>800</span><span>-&gt;</span><span>800</span>/tcp   berserk_kare
登录后复制

进入容器内部

<span>$ </span>sudo docker exec -it <span>1801</span>a32aab54 /bin/bash
root<span>@1801a32aab54</span><span>:/</span><span># </span>
登录后复制

查看nginx目录

<span># cd /etc/nginx/</span>
conf<span>.d</span>/         koi-utf         mime<span>.types</span>      nginx<span>.conf</span>      uwsgi_params    
fastcgi_params  koi-win         modules/        scgi_params     win-utf  
登录后复制

可以看到不仅没有熟悉的 /sites-available,也没有 /sites-enabled

继续查看nginx配置

<span># cat /conf.d/default.conf</span><span>server</span> {
    listen       <span>80</span>;
    server_name  localhost;

    <span>#charset koi8-r;</span><span>#access_log  /var/log/nginx/log/host.access.log  main;</span>    location / {
        root   /usr/share/nginx/html;
        <span>index</span><span>index</span>.html <span>index</span>.htm;
    }

    <span>#error_page  404              /404.html;</span><span># redirect server error pages to the static page /50x.html</span><span>#</span>
    error_page   <span>500</span><span>502</span><span>503</span><span>504</span>  /<span>50</span>x.html;
    location = /<span>50</span>x.html {
        root   /usr/share/nginx/html;
    }
    <span>#...省略php-fpm配置,好长..</span>
}
登录后复制

根目录配置: root /usr/share/nginx/html;

测试

<span># cd /usr/share/nginx/html</span><span># touch index.html</span><span># echo "test nginx in docker" &gt;index.html</span>
登录后复制

php-fpm配置相关

'').addClass(''pre-numbering'').hide(); $(this).addClass(''has-numbering'').parent().append($numbering); for (i = 1; i '').text(i)); }; $numbering.fadeIn(1700); }); });

以上就介绍了167 docker docker构建nginx容器系列问题,包括了docker,nginx方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

b/w docker-compose build vs docker build生成的docker镜像有什么区别?

b/w docker-compose build vs docker build生成的docker镜像有什么区别?

在构建docker镜像时,如果使用docker-compose build vs docker build构建图像,则image id会有所不同. env有不同的主机名.

还有什么不同?为什么图像不同?

最佳答案
在docker-compose构建之间构建的实际图像与根据图像内容构建的“手动”docker构建之间没有区别.

不同之处仅在于构建结果的命名/标记,docker-compose会自动为您执行.
除此之外,docker-compose构建在幕后并没有什么不同,只是一个普通docker构建的包装器.

docker history 查看docker镜像构建过程 还原dockerfile 查看启动参数

docker history 查看docker镜像构建过程 还原dockerfile 查看启动参数

介绍:

~]# docker history --help
Usage:  docker history [OPTIONS] IMAGE
Show the history of an image
Options:
      --format string   Pretty-print images using a Go template
      --help            Print usage
  -H,--human           Print sizes and dates in human readable format (default true)
      --no-trunc        Don't truncate output
  -q,--quiet           Only show numeric IDs

示例:

~]# docker history kubeguide/tomcat-app:v1
IMAGE               CREATED             CREATED BY                                      SIZE                COMMENT
a29e200a18e9        2 years ago         /bin/sh -c #(nop) ADD dir:c5c3bddef49cbc9f...   992kB               
<missing>           2 years ago         /bin/sh -c #(nop) MAINTAINER bestme <bestm...   0B                  
<missing>           2 years ago         /bin/sh -c #(nop) CMD ["catalina.sh" "run"]     0B                  
<missing>           2 years ago         /bin/sh -c #(nop) EXPOSE 8080/tcp               0B                  
<missing>           2 years ago         /bin/sh -c set -e  && nativeLines="$(catal...   0B                  
<missing>           2 years ago         /bin/sh -c set -x   && curl -fSL "$TOMCAT_...   16.6MB              
<missing>           2 years ago         /bin/sh -c #(nop) ENV TOMCAT_TGZ_URL=https...   0B                  
<missing>           2 years ago         /bin/sh -c #(nop) ENV TOMCAT_VERSION=8.0.35     0B                  
<missing>           2 years ago         /bin/sh -c #(nop) ENV TOMCAT_MAJOR=8            0B                  
<missing>           2 years ago         /bin/sh -c set -ex  && for key in   05AB33...   114kB               
<missing>           2 years ago         /bin/sh -c apt-get update && apt-get insta...   7.18MB              
<missing>           2 years ago         /bin/sh -c {   echo 'deb http://httpredir....   172B                
<missing>           2 years ago         /bin/sh -c #(nop) ENV OPENSSL_VERSION=1.0....   0B                  
<missing>           2 years ago         /bin/sh -c #(nop) workdir /usr/local/tomcat     0B                  
<missing>           2 years ago         /bin/sh -c mkdir -p "$CATALINA_HOME"            0B                  
<missing>           2 years ago         /bin/sh -c #(nop) ENV PATH=/usr/local/tomc...   0B                  
<missing>           2 years ago         /bin/sh -c #(nop) ENV CATALINA_HOME=/usr/l...   0B                  
<missing>           2 years ago         /bin/sh -c set -x  && apt-get update  && a...   163MB               
<missing>           2 years ago         /bin/sh -c #(nop) ENV JAVA_DEBIAN_VERSION=...   0B                  
<missing>           2 years ago         /bin/sh -c #(nop) ENV JAVA_VERSION=7u101        0B                  
<missing>           2 years ago         /bin/sh -c #(nop) ENV JAVA_HOME=/usr/lib/j...   0B                  
<missing>           2 years ago         /bin/sh -c {   echo '#!/bin/sh';   echo 's...   87B                 
<missing>           2 years ago         /bin/sh -c #(nop) ENV LANG=C.UTF-8              0B                  
<missing>           2 years ago         /bin/sh -c apt-get update && apt-get insta...   1.17MB              
<missing>           2 years ago         /bin/sh -c apt-get update && apt-get insta...   44.3MB              
<missing>           2 years ago         /bin/sh -c #(nop) CMD ["/bin/bash"]             0B                  
<missing>           2 years ago         /bin/sh -c #(nop) ADD file:5d8521419ad6cfb...   125MB

如果要让CREATED BY 列完整显示,可以加上 --no-trunc 参数。直接在shell中看会比较乱,可以输出到文件查看,就比较直观了

以PHPmyadmin docker镜像为例,效果如下:

 

 

 

 

Docker Spring boot 项目使用 docker-maven-plugin 执行mvn docker:build 打成镜像

Docker Spring boot 项目使用 docker-maven-plugin 执行mvn docker:build 打成镜像

创建Dockerfile文件

 

此处的参数说明:

FROM openjdk:8-jdk-alpine  基与jdk1.8
VOLUME /tmp   挂载容器的位置, 容易找到
ADD kitty-generator-1.0.0.jar app.jar   宿主机器的jar文件 移动到 容器的jar文件
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]  容器执行的命令

EXPOSE 9000 简易爆漏的端口 下面docker run -p 还是要的, 因为容器是桥接模式
EXPOSE 9092 写多个就会暴露多个端口

若要执行调优内存:加参数如下

 

 

2:POM.xml配置 加入docker:build插件

 <artifactId>kitty-generator</artifactId>  此处和下面${project.artifactId} 对应
<version>${project.version}</version>
<packaging>jar</packaging> 此处改为jar包方式
<properties>
*****
<docker.image.prefix>kitty</docker.image.prefix> 此处和下面${docker.image.prefix} 对应
</properties>

#下面为jar方式.
    <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> <!-- Docker maven plugin --> <plugin> <groupId>com.spotify</groupId> <artifactId>docker-maven-plugin</artifactId> <version>1.0.0</version> <configuration> <imageName>${docker.image.prefix}/${project.artifactId}</imageName> <dockerDirectory>src/main/docker</dockerDirectory> <resources> <resource> <targetPath>/</targetPath> <directory>${project.build.directory}</directory> <include>${project.build.finalName}.jar</include> </resource> </resources> </configuration> </plugin> </plugins>

 

在父模块打包

mvn clean install package -Dmaven.test.skip

 

在子模块执行生成镜像

mvn docker:build -Dmaven.test.skip

 

启动镜像

docker run -itd -p 9000:9000 -v /data/generator/:/data kitty/kitty-generator

 -it  可以交互进入容器

-d   后台运行

-p 端口映射,若项目有多个端口,  -p 9000:9000 -p 9092:9092 写多个即可

-v 挂载文件 宿主/data/generator/ 不存在会自动创建   容器/data会自动创建

 

挂载文件配置 

   * 注意下方/data/ 红色字体

-v /data/generator/:/data  这的/data 表示容器的日志 将会在宿主机器生成/data/generator/kitty-generator.log文件
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <!-- ch.qos.logback.core.ConsoleAppender 控制台输出 -->
    <appender name="console" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>[%-5level] %d{HH:mm:ss.SSS} [%thread] %logger{36} - %msg%n</pattern>
        </encoder>
    </appender>
    <!-- ch.qos.logback.core.rolling.RollingFileAppender 文件日志输出 -->
    <appender name="baselog" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <File>/data/kitty-generator.log</File>
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <fileNamePattern>log/base.%d.%i.log</fileNamePattern>
            <timeBasedFileNamingAndTriggeringPolicy  class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
                <maxFileSize>100 MB</maxFileSize>
            </timeBasedFileNamingAndTriggeringPolicy>
        </rollingPolicy>
        <encoder>
            <pattern>
                [%-5level] %d{HH:mm:ss.SSS} [%thread] %logger{36} - %msg%n
            </pattern>
            <charset>UTF-8</charset> <!-- 此处设置字符集 -->
        </encoder>
    </appender>
    <!-- 日志级别 -->
    <root>
        <!-- 定义了ERROR和INFO级别的日志;分别在FILE文件和控制台输出 -->
        <level value="INFO" />
        <appender-ref ref="baselog" />
        <appender-ref ref="console" />
    </root>
    <logger name="com.louis.kitty.generator" level="INFO">
        <appender-ref ref="baselog" />
    </logger>
</configuration>

 

今天关于【Docker实战之入门】构建docker镜像[docker build -t csphere/centos:7.1 .]构建docker镜像的方式的分享就到这里,希望大家有所收获,若想了解更多关于167 docker docker构建nginx容器系列问题 docker registry docker run docker toolbo、b/w docker-compose build vs docker build生成的docker镜像有什么区别?、docker history 查看docker镜像构建过程 还原dockerfile 查看启动参数、Docker Spring boot 项目使用 docker-maven-plugin 执行mvn docker:build 打成镜像等相关知识,可以在本站进行查询。

本文标签: