|
|
[root@c63d7538a2ca /]# yum install -y net-tools
( Q I& Y$ O7 b& c# p+ \5 ]Loaded plugins: fastestmirror, ovl/ ~+ W. a' w3 F, e7 X% C
Loading mirror speeds from cached hostfile
2 Y( d1 U% j6 ?6 B * base: mirrors.huaweicloud.com; g& p" b& e6 h) M+ v3 m( @& w, ^1 }5 f
* extras: mirrors.huaweicloud.com% z5 @3 T, _7 l
* updates: mirrors.huaweicloud.com/ T. Z. n* Z& i4 |' b( }( a
Resolving Dependencies
) |# Q# {! j( Y0 b- y/ A--> Running transaction check
4 q, A1 n; x x; I& b$ _---> Package net-tools.x86_64 0:2.0-0.22.20131004git.el7 will be installed5 i4 a1 u$ I) N) {8 J* H0 [& Z
--> Finished Dependency Resolution
* C2 F: O" X' ?' `! j9 U6 m) I: M7 Q( o
Dependencies Resolved$ z1 P* h: } `$ p" w$ h' x
- A) f1 S- X$ e, B; B
================================================================================' Z, I2 Q& ~2 P( `" Y
Package Arch Version Repository Size
' f) s$ x. ^2 X I0 Y7 J0 H================================================================================; B+ x! P3 V! @& Q+ c3 X
Installing:
j. ^5 \# U* k+ O- { net-tools x86_64 2.0-0.22.20131004git.el7 base 305 k
/ X; G# K6 x# Q: f8 \/ |4 E3 ]; a+ _! o d' P7 W) G% f
Transaction Summary
/ V3 a5 j- h% J4 @( @================================================================================
& s) V4 N1 \$ i' ~7 K2 qInstall 1 Package
; j) R% i; q% R+ y: P4 ]& c$ p; k, ?$ _0 e
Total download size: 305 k' w+ z. Q& q& L; X4 R% H/ m
Installed size: 917 k: u3 V, b1 n y& x: m5 o
Downloading packages:# O# a( ~/ a, e ^* U/ O$ A
net-tools-2.0-0.22.20131004git.el7.x86_64.rpm | 305 kB 00:02 " M" z+ z: h6 t. y' a
Running transaction check
# u0 P( I# e4 M# s! d8 |' uRunning transaction test
# `1 b% m9 C* g. J) ^! ]Transaction test succeeded
7 A/ ~6 H ^+ ^# oRunning transaction
+ @3 M5 ]+ z7 M g" F Installing : net-tools-2.0-0.22.20131004git.el7.x86_64 1/1
/ j: o, B) L( ^, O; u/ \ Verifying : net-tools-2.0-0.22.20131004git.el7.x86_64 1/1 # K c' v: }$ G% Q2 W& _2 ]
& L* P5 h( v$ c9 x5 i6 f3 \% |Installed:# P4 a9 o4 W: U% j. g- }% q& C
net-tools.x86_64 0:2.0-0.22.20131004git.el7 ! y* V7 s- y; m; f4 Y/ c
- {0 W- T# X% `) o2 B3 T
6 A& J( w3 ^. ][root@c63d7538a2ca /]# yum install -y vim
( _& V" e7 @) F: T; JLoaded plugins: fastestmirror, ovl
" g i/ b% T5 z: T) u, aLoading mirror speeds from cached hostfile6 n$ l& h1 ]5 b. F: x% Y
* base: mirrors.huaweicloud.com
w4 c! m* x0 a& E8 s * extras: mirrors.huaweicloud.com
$ {+ W1 ~! \9 h k% W9 r * updates: mirrors.huaweicloud.com
" B1 y# S3 R# h, l+ K zResolving Dependencies
) X, A) S Z K/ Y) Z! Q5 h) x--> Running transaction check
u9 u- x5 w8 o4 m! l0 } z---> Package vim-enhanced.x86_64 2:7.4.160-4.el7 will be installed
. U4 x6 X2 \* O, D0 I. D% I) l
9 o- h6 f* H/ q, N8 T& P 安装的包,可以使用它,制作成一个镜像
2 z% T# Z3 R9 I; [3 v步骤如下:" e1 |' v& Q7 m& I& ]
[root@dockerserver ~]# docker ps* E" @4 r) R7 R' o
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES# Q! m. R4 [! s, i/ v2 G% {7 z
c63d7538a2ca centos "/usr/sbin/init" 24 minutes ago Up 23 minutes hungry_bose
4 @' d1 @1 e1 U- @* m hungry_bose是docker 为我们的容器随机分配的名字:
/ i1 B3 m; ~, M0 @% v执行 docker commit 命令将容器保存为镜像1 @' ^' q! b% U: u1 A+ D/ S& _
% @/ W& t+ S) e6 h. [ R; q
[root@dockerserver ~]# docker commit hungry_bose hungry_bose_vim5 s8 |) x7 N' G# }) ~
sha256:7119d12ac7bff5dbec177f268843c83209379f90fc33bff6bc2e06b3cfe2a453; s; \# R5 b1 I3 b
% W( p; Q; O* _8 f( q
[root@dockerserver ~]# docker images1 a I0 ~+ t9 N) ?, s
REPOSITORY TAG IMAGE ID CREATED SIZE
: s1 @3 p6 d2 y; |( F; c: k* khungry_bose_vim latest 7119d12ac7bf 35 seconds ago 368MB# g% Z C: g! C q8 J
centos latest 49f7960eb7e4 2 weeks ago 200MB+ I3 Y- ^0 S. s% s3 m: U" l
1 ~. ?; r% g B+ n, I1 i) q从size上可以看出镜像变大了,因为安装了软件而发生变化3 K6 p* T0 ]( I0 b; g. {
从新的镜像启动容器,验证vim已经可以使用了。
+ Z1 M5 n+ I2 D h3 o" G$ P[root@dockerserver ~]# docker run --privileged -it hungry_bose_vim /usr/sbin/init &
! o& J l# ^+ G: Z[3] 7826
! R6 q+ b$ b/ j! S7 d3 k
7 ]0 z6 U! f* ^$ R) d1 U7 z% y7 L7 c0 c, P
# D- L. O; i0 J" P$ n
; [8 z3 c8 F# I( P' Y[root@compute01 ~]# podman commit stream8 centos8:stream8-1
/ X1 |$ n. ~, x& `+ d' R) P+ j3 wGetting image source signatures
+ [0 d O, P. O& M! b2 ?( P2 eCopying blob c3dee2a613b9 skipped: already exists 5 W3 T- ^) D# g! ~# ?! m( l
Copying blob f53b51bcab65 done
8 C, }$ {: O( ^) |, PCopying config f3e7aa6982 done # ], }: W# O$ \4 h6 ?' E
Writing manifest to image destination
' t( t0 m$ }$ E- p/ y6 uStoring signatures1 Z9 `1 c% {, C1 C
f3e7aa69823b8a3557c704d836a91f3a02628059a26246310e283e2b65ff97bf
7 N3 Y1 `3 e0 D e1 P/ h[root@compute01 ~]# podman images 3 ^- p7 F. y. y# t8 S, u: \( E
REPOSITORY TAG IMAGE ID CREATED SIZE: T4 D0 j/ U# ?! h9 F* @
localhost/centos8 stream8-1 f3e7aa69823b 21 seconds ago 1.65 GB! A. H( p$ s" h$ O/ B: }5 L
localhost/centos8 stream 6fd6181ebba0 5 hours ago 1.65 GB0 X# i, n4 C, j8 i
! r( o& h# k0 c8 K8 D. U% _[root@compute01 ~]# 2 I5 |6 A- U, A/ h" f5 f& b
启动容器:
- f5 w; }% E7 s) \2 S[root@compute01 ~]# podman run -d -t -i --network=host --name stream8 --restart=always --privileged=true centos8:stream8-1 /sbin/init /bin/bash
; N* K1 ?9 ~# T# o w" `+ u% B
; t# d& q( `8 T. n ?& r |
|