|NO.Z.00010|——————————|CloudVirtualiZation|——|Cloud&Docker映象.V02|-------------------------------------|建立tomcat映象|
阿新 • • 發佈:2022-03-27
[CloudVirtualiZation:Cloud&Docker映象.V02] [Applications.CloudVirtualiZation] [|docker|docker映象|倉庫管理|映象特性|dockerfile|docker倉庫構建|Harbor企業級私有倉庫]
一、測試沒有封裝好前臺守護程序的映象執行容器,容器未exited狀態
### --- library:官方的:官方的預設是一個底層的基礎映象;基礎映象包含一些工具和類庫; ~~~ 基礎映象可以通過作業系統tar打包, [root@localhost ~]# docker pull centos:6.8 6.8: Pulling from library/centos
### --- 刪除全部容器 [root@localhost ~]# docker rm -f $( docker ps -a -q ) [root@localhost ~]# docker ps -a [root@localhost ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE centos 6.8 82f3b5f3c58f 21 months ago 195 MB
二、下載已經封裝好前臺守護程序映象,執行是up狀態### --- STATUS:Exited它執行的命令是/bin/bash; ~~~ 而此刻/bin/bash並沒有得到我們授予終端的作用,隨意就會推出,沒有前臺工作的程序 [root@localhost ~]# docker run --name test centos:6.8 [root@localhost ~]# docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES c33ecc6d9676 centos:6.8 "/bin/bash" 24 seconds ago Exited (0) 23 seconds ago
### --- 下載已經封裝好前臺守護程序映象,執行是up狀態
~~~ # 網易蜂巢:產品服務——>映象倉庫——>映象中心——>centos
~~~ library/centos:較精簡的映象倉庫,沒有工作在前臺的守護程序,一啟動就會推出。
~~~ public/centos:包含了一些除錯工具,wget等,注意在生產環境中使用public映象倉庫。封裝了一些 工具
~~~ supervisord.conf;是工作在前臺的一個程序,啟動後會正常工作。
~~~ # 注:centos:7.0~7.6之間映象不建議使用,有自己對應的systemd的工具,需要自己配置;建議使用6.7版本。
### --- 映象下載地址:https://c.163yun.com/hub#/library/repository/info?repoId=1055
### --- 複製:docker pull hub.c.163.com/public/centos:6.7-tools
[root@localhost ~]# docker pull hub.c.163.com/public/centos:6.7-tools
6.7-tools: Pulling from public/centos
Digest: sha256:cade8d883b9bde4dc43fd233e4b76e6efd17980b6f61014fab11d666ab7f06ee
Status: Downloaded newer image for hub.c.163.com/public/centos:6.7-tools
[root@localhost ~]# docker images
hub.c.163.com/public/centos 6.7-tools b2ab0ed558bb 3 years ago 602 MB
[root@localhost ~]# docker run --name mysql -d hub.c.163.com/public/centos:6.7-tools //啟動一個centos並在裡面執行mysql
ec7f2957ea819753afc37538565ff12d8edeed38c72bc87c3c3466c2c8d5532e
[root@localhost ~]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ec7f2957ea81 hub.c.163.com/public/centos:6.7-tools "/usr/bin/supervisord" 33 seconds ago Up 33 seconds 22/tcp
三、使用當前容器打包映象commit的轉換
### --- 使用當前容器打包映象commit的轉換
### --- 使用當前容器打包一個映象:
[root@localhost ~]# docker exec -it mysql /bin/bash
[root@ec7f2957ea81 /]# yum install -y mysql mysql-server
[root@ec7f2957ea81 /]# service mysqld start
[root@ec7f2957ea81 /]# chkconfig mysqld on
[root@ec7f2957ea81 /]# mysqladmin -uroot password 123
[root@ec7f2957ea81 /]# mysql -uroot -p
### --- commit只是把當時的狀態打包成映象,
[root@localhost ~]# docker commit mysql mysql:5.1 // mysql:當前容器的名稱 MySQL:5.1 建立的映象名稱:5.1是映象的版本號
sha256:3ea843aab0eb33e65c347919a9f0f676e6bf1139ece1c5a8a7c7a39bd9e9075d
[root@localhost ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
mysql 5.1 3ea843aab0eb About a minute ago 702 MB //我們自己建立的映象
### --- 使用我們打包的映象啟動一個容器未mysql-my 3ea8:使用映象ID建立
[root@localhost ~]# docker run --name mysql-my -d 3ea8
0485d25108a8f64ffe52af13560f9e5eb7c4331b9868a4653254d27da73bd653
[root@localhost ~]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
0485d25108a8 3ea8 "/usr/bin/supervisord" 45 seconds ago Up 45 seconds 22/tcp mysql-my
[root@localhost ~]# docker exec -it 0485d25108a8 /bin/bash
[root@0485d25108a8 /]# mysql -uroot -p
四、使用當前容器打包映象dockerfile的轉換### --- 使用當前容器打包映象dockerfile的轉換
~~~ 網易蜂巢查詢優秀的dockerfile文字:
~~~ https://c.163yun.com/hub#/home——>映象中心——>wordpress——>END
五、使用dockfile建立一個Tomcat映象(通過dockfile得到一個自己想要得到的映象):
### --- 上傳配置檔案至伺服器中:
[root@localhost ~]# mkdir tomcat
[root@localhost tomcat]# ls
apache-tomcat-7.0.42.tar.gz Dockerfile jdk-7u25-linux-x64.tar.gz
### --- 最後一個. 表示當前預處理當前dockerfile版本
[root@localhost tomcat]# docker build -t tomcat:v1.0 .
Sending build context to Docker daemon 104.3 MB
Step 1/8 : FROM hub.c.163.com/public/centos:6.7
6.7: Pulling from public/centos
Digest: sha256:318d49272d1ef825831051c558ccb24237f0e95ea0f30dde2c1e6cab11d62ecb
Status: Downloaded newer image for hub.c.163.com/public/centos:6.7
Removing intermediate container 8459e1403296
Successfully built b9700949f863
[root@localhost tomcat]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
tomcat v1.0 b9700949f863 3 hours ago 642 MB
### --- 通過IE瀏覽器可以訪問Tomcat web介面
[root@localhost tomcat]# docker run --name tomcat -p 80:8080 -d tomcat:v1.0
00d30c7ce4d29a366c4cfcc5cbe26b56fbd6aff344827d74ad5d48e20f93d578
[root@localhost tomcat]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
00d30c7ce4d2 tomcat:v1.0 "/bin/sh -c '/root..." About a minute ago Up About a minute 22/tcp, 0.0.0.0:80->8080/tcp tomcat
[root@localhost tomcat]# docker ps -a --no-trunc
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
00d30c7ce4d29a366c4cfcc5cbe26b56fbd6aff344827d74ad5d48e20f93d578 tomcat:v1.0 "/bin/sh -c '/root/apache-tomcat-7.0.42/bin/startup.sh && tailf /root/apache-tomcat-7.0.42/logs/catalina.out'" 2 minutes ago Up 2 minutes 22/tcp, 0.0.0.0:80->8080/tcp tomcat
===============================END===============================
Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart ——W.S.Landor
來自為知筆記(Wiz)