赞
踩
目录
用来查看 docker 客户端引擎 和 server 端引擎版本信息
- [root@VM-8-17-centos ~]# docker version
- Client: Docker Engine - Community
- Version: 24.0.7
- API version: 1.43
- Go version: go1.20.10
- Git commit: afdd53b
- Built: Thu Oct 26 09:11:35 2023
- OS/Arch: linux/amd64
- Context: default
-
- Server: Docker Engine - Community
- Engine:
- Version: 24.0.7
- API version: 1.43 (minimum version 1.12)
- Go version: go1.20.10
- Git commit: 311b9ff
- Built: Thu Oct 26 09:10:36 2023
- OS/Arch: linux/amd64
- Experimental: false
- containerd:
- Version: 1.6.24
- GitCommit: 61f9fd88f79f081d64d6fa3bb1a0dc71ec870523
- runc:
- Version: 1.1.9
- GitCommit: v1.1.9-0-gccaecfc
- docker-init:
- Version: 0.19.0
- GitCommit: de40ad0
用来查看 docker 引擎详细信息
- [root@VM-8-17-centos ~]# docker info
- Client: Docker Engine - Community
- Version: 24.0.7
- Context: default
- Debug Mode: false
- Plugins:
- buildx: Docker Buildx (Docker Inc.)
- Version: v0.11.2
- Path: /usr/libexec/docker/cli-plugins/docker-buildx
- compose: Docker Compose (Docker Inc.)
- Version: v2.21.0
- Path: /usr/libexec/docker/cli-plugins/docker-compose
-
- Server:
- Containers: 4
- Running: 4
- Paused: 0
- Stopped: 0
- Images: 8
- Server Version: 24.0.7
- Storage Driver: overlay2
- Backing Filesystem: extfs
- Supports d_type: true
- Using metacopy: false
- Native Overlay Diff: true
- userxattr: false
- Logging Driver: json-file
- Cgroup Driver: cgroupfs
- Cgroup Version: 1
- Plugins:
- Volume: local
- Network: bridge host ipvlan macvlan null overlay
- Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
- Swarm: inactive
- Runtimes: io.containerd.runc.v2 runc
- Default Runtime: runc
- Init Binary: docker-init
- containerd version: 61f9fd88f79f081d64d6fa3bb1a0dc71ec870523
- runc version: v1.1.9-0-gccaecfc
- init version: de40ad0
- Security Options:
- seccomp
- Profile: builtin
- Kernel Version: 3.10.0-1160.99.1.el7.x86_64
- Operating System: CentOS Linux 7 (Core)
- OSType: linux
- Architecture: x86_64
- CPUs: 2
- Total Memory: 1.952GiB
- Name: VM-8-17-centos
- ID: 38c01492-c895-4bbc-8e2e-a575241b4201
- Docker Root Dir: /var/lib/docker
- Debug Mode: false
- Experimental: false
- Insecure Registries:
- 127.0.0.0/8
- Registry Mirrors:
- https://q9n10oke.mirror.aliyuncs.com/
- Live Restore Enabled: false
用来查看帮助文档,给出了对于不同指令的解释
- [root@VM-8-17-centos ~]# docker --help
-
- Usage: docker [OPTIONS] COMMAND
-
- A self-sufficient runtime for containers
-
- Common Commands:
- run Create and run a new container from an image
- exec Execute a command in a running container
- ps List containers
- build Build an image from a Dockerfile
- pull Download an image from a registry
- push Upload an image to a registry
- images List images
- login Log in to a registry
- logout Log out from a registry
- search Search Docker Hub for images
- version Show the Docker version information
- info Display system-wide information
-
- Management Commands:
- builder Manage builds
- buildx* Docker Buildx (Docker Inc., v0.11.2)
- compose* Docker Compose (Docker Inc., v2.21.0)
- container Manage containers
- context Manage contexts
- image Manage images
- manifest Manage Docker image manifests and manifest lists
- network Manage networks
- plugin Manage plugins
- system Manage Docker
- trust Manage trust on Docker images
- volume Manage volumes
- Swarm Commands:
- swarm Manage Swarm
- Commands:
- attach Attach local standard input, output, and error streams to a running container
- commit Create a new image from a container's changes
- cp Copy files/folders between a container and the local filesystem
- create Create a new container
- diff Inspect changes to files or directories on a container's filesystem
- events Get real time events from the server
- export Export a container's filesystem as a tar archive
- history Show the history of an image
- import Import the contents from a tarball to create a filesystem image
- inspect Return low-level information on Docker objects
- kill Kill one or more running containers
- load Load an image from a tar archive or STDIN
- logs Fetch the logs of a container
- pause Pause all processes within one or more containers
- port List port mappings or a specific mapping for the container
- rename Rename a container
- restart Restart one or more containers
- rm Remove one or more containers
- rmi Remove one or more images
- save Save one or more images to a tar archive (streamed to STDOUT by default)
- start Start one or more stopped containers
- stats Display a live stream of container(s) resource usage statistics
- stop Stop one or more running containers
- tag Create a tag TARGET_IMAGE that refers to SOURCE_IMAGE
- top Display the running processes of a container
- unpause Unpause all processes within one or more containers
- update Update configuration of one or more containers
- wait Block until one or more containers stop, then print their exit codes
- Global Options:
- --config string Location of client config files (default "/root/.docker")
- -c, --context string Name of the context to use to connect to the daemon (overrides DOCKER_HOST env var and default context set with "docker context use")
- -D, --debug Enable debug mode
- -H, --host list Daemon socket to connect to
- -l, --log-level string Set the logging level ("debug", "info", "warn", "error", "fatal") (default "info")
- --tls Use TLS; implied by --tlsverify
- --tlscacert string Trust certs signed only by this CA (default "/root/.docker/ca.pem")
- --tlscert string Path to TLS certificate file (default "/root/.docker/cert.pem")
- --tlskey string Path to TLS key file (default "/root/.docker/key.pem")
- --tlsverify Use TLS and verify the remote
- -v, --version Print version information and quit
- Run 'docker COMMAND --help' for more information on a command.
- For more help on how to use Docker, head to https://docs.docker.com/go/guides/
查看容器运行的监控指标 cpu...
- CONTAINER ID NAME CPU % MEM USAGE / LIMIT MEM % NET I/O BLOCK I/O PIDS
- 82f2d06ab55b nacos 0.58% 702.4MiB / 1.952GiB 35.14% 656B / 0B 29.9MB / 4.41MB 97
- ee15a523b211 redis 0.15% 12.22MiB / 1.952GiB 0.61% 12.5kB / 31.9kB 4.9MB / 0B 4
查看当前本地仓库中存在哪些镜像.
- docker images -q | 镜像名
- // -q 和 镜像名 是可选参数
a)docker images 就是 docker image ls 的缩写,用来镜像以及信息
- [root@VM-8-17-centos ~]# docker images
- REPOSITORY TAG IMAGE ID CREATED SIZE
- redis 5 c5da061a611a 2 years ago 110MB
- mysql 5.7 c20987f18b13 2 years ago 448MB
- rabbitmq 3.8-management 699038cb2b96 2 years ago 250MB
- nacos/nacos-server 1.4.2 938169b118c7 2 years ago 956MB
- redis 5.0.9 987b553c835f 3 years ago 98.3MB
- bladex/sentinel-dashboard 1.8.0 61c10eaefbcf 3 years ago 147MB
- nacos/nacos-server 1.2.0 763941e566bb 3 years ago 732MB
- bladex/sentinel-dashboard 1.7.1 d12e18546bfd 3 years ago 148MB
b)docker images -q 是用来查看所有镜像 id 的
- [root@VM-8-17-centos ~]# docker images -q
- c5da061a611a
- c20987f18b13
- 699038cb2b96
- 938169b118c7
- 987b553c835f
- 61c10eaefbcf
- 763941e566bb
- d12e18546bfd
Ps:一个镜像的 id 是很长的,这里只会展示一个部分
c)docker images 镜像名 用来查看指定镜像信息(镜像名相同,版本不同)
- [root@VM-8-17-centos ~]# docker images redis
- REPOSITORY TAG IMAGE ID CREATED SIZE
- redis 5 c5da061a611a 2 years ago 110MB
- redis 5.0.9 987b553c835f 3 years ago 98.3MB
同理,docker images -q 镜像名 就是展示指定镜像名的镜像id.
- [root@VM-8-17-centos ~]# docker images -q redis
- c5da061a611a
- 987b553c835f
用来下载一个镜像
docker pull 镜像名:版本号
a)例如下载最新版本 redis:docker pull redis 等同于 docker pull redis:latest
b)例如下载指定版本 redis:docker pull redis:5.0.9
搜索镜像,只能查看远端仓库是否存在该镜像,不能列出版本.
docker search 镜像名
a)例如查看 tomcat 镜像是否存在
- [root@VM-8-17-centos ~]# docker search tomcat
- NAME DESCRIPTION STARS OFFICIAL AUTOMATED
- tomcat Apache Tomcat is an open source implementati… 3618 [OK]
- tomee Apache TomEE is an all-Apache Java EE certif… 113 [OK]
- bitnami/tomcat Bitnami Tomcat Docker Image 51 [OK]
- bitnamicharts/tomcat 0
- secoresearch/tomcat-varnish Tomcat and Varnish 5.0 0 [OK]
- vulhub/tomcat 0
- islandora/tomcat 0
- wnprcehr/tomcat 0
- jumpserver/tomcat Apache Tomcat is an open source implementati… 0
- hivdb/tomcat-with-nucamino 0
- sismics/tomcat Apache Tomcat Servlet Container 1
- eclipse/rdf4j-workbench Dockerfile for Eclipse RDF4J Server and Work… 6
- eclipse/hadoop-dev Ubuntu 14.04, Maven 3.3.9, JDK8, Tomcat 8 0 [OK]
- gbif/ipt The GBIF Integrated Publishing Toolkit (IPT)… 2
- dhis2/base-dev Images in this repository contains DHIS2 WAR… 0
- eclipse/alpine_jdk8 Based on Alpine 3.3. JDK 1.8, Maven 3.3.9, T… 1 [OK]
- dhis2/base Images in this repository contains DHIS2 WAR… 0
- jelastic/tomcat An image of the Tomcat Java application serv… 4
- cfje/tomcat-resource Tomcat Concourse Resource 2
- rightctrl/tomcat CentOS , Oracle Java, tomcat application ssl… 7 [OK]
- amd64/tomcat Apache Tomcat is an open source implementati… 8
- arm64v8/tomcat Apache Tomcat is an open source implementati… 9
- tomcat2111/papercut-mf PaperCut MF Application Server 0
- softwareplant/tomcat Tomcat images for jira-cloud testing 0 [OK]
- tomcatengineering/pg_backup_rotated Clone of martianrock/pg_backup_rotated but w… 0
删除指定镜像
docker image rm 镜像名(name:tag) | 镜像id
a)正常删除(要求:必须是没有正在运行的镜像),例如删除 tomcat:8.0 镜像
- [root@VM-8-17-centos ~]# docker image rm tomcat:8.0
- Untagged: tomcat:8.0
- Untagged: tomcat@sha256:8ecb10948deb32c34aeadf7bf95d12a93fbd3527911fa629c1a3e7823b89ce6f
- Deleted: sha256:ef6a7c98d192507d6066dcf24e44bec66d07ec9cf7c55d8d3d1ea0a24660bdef
- Deleted: sha256:6dc5bbd9ede58ce52f6e9d34eaac4e3bf1fbb3014e9eae344677bf3c2f022a17
- Deleted: sha256:6f22c12dcf0ac783b0b00471e38262c708761a677e6a847a57a5d7cce2cbc7f1
- Deleted: sha256:dbefc7cd29b21d99c136d6234ca442cdb89fc91f3c91ef6c1d333d37424d2f44
- Deleted: sha256:d65396dbf112285c9d395bb33c2eb2f776cd9b959c007152c10a2f25fbf1c198
- Deleted: sha256:5b8a875f80bdd2e9f9cf2c0852243e0cb59ea7be5e92620b2c2089800bb18594
- Deleted: sha256:d97b31b9ca51e024a895e2f6fa032224fb73ba2a070149499ce87306ed9d7af6
- Deleted: sha256:3717c4f05493340d97d982bc6ed8cba98869833918de23c78c39414788dd08c1
- Deleted: sha256:b9c326fb510188d2958888aee970ae93925c2a2ad8a78b2ec3a521747ee3ec4f
- Deleted: sha256:8cc193ff8a5b4837eab54bee27418daadad8825f13b8fab55229b4954fee6f9f
- Deleted: sha256:b1852f6f3f85863ed849af673e566ad8de76dac4d2c6526d791e965978c1ce62
- Deleted: sha256:8c466bf4ca6ffdda8b7717b1cd6fe31109529ee64e626a003a224fb8bd2bc469
b)强制删除(可以删除正在运行的镜像):docker image rm -f 镜像名(name:tag) | 镜像 id
c)批量删除,例如删除所有 tomcat 镜像:docker image rm -f $(docker image tomcat -q)
查看运行中的容器信息
docker ps -a | -q
a)查看当前 docker 引擎中正在运行的容器
- [root@VM-8-17-centos ~]# docker ps
- CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
- abc6284fe34d redis:5.0.9 "docker-entrypoint.s…" 5 weeks ago Up 5 weeks 0.0.0.0:6380->6379/tcp, :::6380->6379/tcp redis
- d442ff7829df nacos/nacos-server:1.4.2 "bin/docker-startup.…" 6 weeks ago Up 5 weeks 0.0.0.0:8848->8848/tcp, :::8848->8848/tcp nacos
- fc16ae62dc0f mysql:5.7 "docker-entrypoint.s…" 7 weeks ago Up 7 weeks 33060/tcp, 0.0.0.0:3307->3306/tcp, :::3307->3306/tcp mysql
- a7dbf979b1e6 rabbitmq:3.8-management "docker-entrypoint.s…" 7 weeks ago Up 7 weeks 4369/tcp, 5671/tcp, 0.0.0.0:5672->5672/tcp, :::5672->5672/tcp, 15671/tcp, 15691-15692/tcp, 25672/tcp, 0.0.0.0:15672->15672/tcp, :::15672->15672/tcp mq
b)查看所有容器(运行 和 停止 的容器):docker ps -a
c)查看所有容器id:docker ps -aq
docker run -d(后台运行) -p(端口映射) --name 自定义容器名 镜像名:tag
以下拿 tomcat:8.0 来举例
a)简单运行一个容器(这种方式运行容器,会导致容器内无法访问,因为这里涉及到容器端口映射的概念,后面会讲)
- [root@VM-8-17-centos ~]# docker run tomcat:8.0
- 23-Dec-2023 12:25:27.847 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server version: Apache Tomcat/8.0.53
- 23-Dec-2023 12:25:27.849 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server built: Jun 29 2018 14:42:45 UTC
- 23-Dec-2023 12:25:27.849 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server number: 8.0.53.0
- 23-Dec-2023 12:25:27.849 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Name: Linux
- 23-Dec-2023 12:25:27.849 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Version: 3.10.0-1160.99.1.el7.x86_64
- 23-Dec-2023 12:25:27.849 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Architecture: amd64
- 23-Dec-2023 12:25:27.849 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Java Home: /usr/lib/jvm/java-7-openjdk-amd64/jre
- 23-Dec-2023 12:25:27.849 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Version: 1.7.0_181-b01
- 23-Dec-2023 12:25:27.850 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Vendor: Oracle Corporation
- 23-Dec-2023 12:25:27.850 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_BASE: /usr/local/tomcat
- 23-Dec-2023 12:25:27.850 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_HOME: /usr/local/tomcat
- 23-Dec-2023 12:25:27.851 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties
- 23-Dec-2023 12:25:27.851 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
- 23-Dec-2023 12:25:27.851 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djdk.tls.ephemeralDHKeySize=2048
- 23-Dec-2023 12:25:27.851 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.protocol.handler.pkgs=org.apache.catalina.webresources
- 23-Dec-2023 12:25:27.851 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dignore.endorsed.dirs=
- 23-Dec-2023 12:25:27.851 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.base=/usr/local/tomcat
- 23-Dec-2023 12:25:27.851 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.home=/usr/local/tomcat
- 23-Dec-2023 12:25:27.851 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.io.tmpdir=/usr/local/tomcat/temp
- 23-Dec-2023 12:25:27.852 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent Loaded APR based Apache Tomcat Native library 1.2.17 using APR version 1.5.1.
- 23-Dec-2023 12:25:27.852 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent APR capabilities: IPv6 [true], sendfile [true], accept filters [false], random [true].
- 23-Dec-2023 12:25:27.855 INFO [main] org.apache.catalina.core.AprLifecycleListener.initializeSSL OpenSSL successfully initialized (OpenSSL 1.1.0f 25 May 2017)
- 23-Dec-2023 12:25:28.071 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["http-apr-8080"]
- 23-Dec-2023 12:25:28.083 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["ajp-apr-8009"]
- 23-Dec-2023 12:25:28.086 INFO [main] org.apache.catalina.startup.Catalina.load Initialization processed in 951 ms
- 23-Dec-2023 12:25:28.147 INFO [main] org.apache.catalina.core.StandardService.startInternal Starting service Catalina
- 23-Dec-2023 12:25:28.148 INFO [main] org.apache.catalina.core.StandardEngine.startInternal Starting Servlet Engine: Apache Tomcat/8.0.53
- 23-Dec-2023 12:25:28.163 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /usr/local/tomcat/webapps/docs
- 23-Dec-2023 12:25:28.827 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /usr/local/tomcat/webapps/docs has finished in 663 ms
- 23-Dec-2023 12:25:28.827 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /usr/local/tomcat/webapps/examples
- 23-Dec-2023 12:25:29.319 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /usr/local/tomcat/webapps/examples has finished in 492 ms
- 23-Dec-2023 12:25:29.319 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /usr/local/tomcat/webapps/host-manager
- 23-Dec-2023 12:25:29.379 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /usr/local/tomcat/webapps/host-manager has finished in 60 ms
- 23-Dec-2023 12:25:29.379 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /usr/local/tomcat/webapps/manager
- 23-Dec-2023 12:25:29.439 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /usr/local/tomcat/webapps/manager has finished in 60 ms
- 23-Dec-2023 12:25:29.439 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /usr/local/tomcat/webapps/ROOT
- 23-Dec-2023 12:25:29.468 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /usr/local/tomcat/webapps/ROOT has finished in 29 ms
- 23-Dec-2023 12:25:29.486 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["http-apr-8080"]
- 23-Dec-2023 12:25:29.550 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["ajp-apr-8009"]
- 23-Dec-2023 12:25:29.554 INFO [main] org.apache.catalina.startup.Catalina.start Server startup in 1467 ms
b)运行 tomcat 容器,设置容器与宿主机端口映射关系
docker run -p 8081:8080 tomcat:8.0
Ps:-p 8081(宿主机):8080(容器)
c)运行 tomcat 容器,设置设置容器与宿主机端口映射关系,后台启动服务
docker run -p 8081:8080 -d tomcat:8.0
d)运行 tomcat 容器,设置设置容器与宿主机端口映射关系,后台启动服务,自定义容器名称
docker run -p 8081:8080 -d --name tomcat_1 tomcat:8.0
docker update 容器id/容器名 修改参数
例如修改 nacos 的启动方式为 --restart=always
- ➜ ~ docker ps
- CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
- 3000a4240d3b mongo:5.0.5 "docker-entrypoint.s…" 3 days ago Up About an hour 0.0.0.0:27017->27017/tcp, :::27017->27017/tcp mongo
- f92e0e8b035a mysql:8.0.33 "docker-entrypoint.s…" 3 days ago Up About an hour 0.0.0.0:3306->3306/tcp, :::3306->3306/tcp, 33060/tcp mysql
- 2f9781622313 nacos/nacos-server:v2.3.2 "bin/docker-startup.…" 3 weeks ago Up About an hour 0.0.0.0:7848->7848/tcp, :::7848->7848/tcp, 0.0.0.0:8848->8848/tcp, :::8848->8848/tcp, 0.0.0.0:9848->9848/tcp, :::9848->9848/tcp nacos
- bbcede76d550 redis:5.0.9 "docker-entrypoint.s…" 3 months ago Up About an hour 0.0.0.0:6379->6379/tcp, :::6379->6379/tcp redis
- ➜ ~ docker update nacos --restart=always
- nacos
- ➜ ~
停止容器:docker stop 容器id | name(这里的 name 是启动时自定义的)
启动容器:docker start 容器 id | name
重启容器:docker restart 容器 id | name
暂停容器:docker pause 容器 id | name
恢复容器(从暂停恢复到启动):docker unpause 容器 id | name
docker kill id | name
例如删除名称为 tomcat_1 的容器
- [root@VM-8-17-centos ~]# docker kill tomcat_1
- tomcat_1
a)正常删除容器(只能删除已经停止的容器):docker rm id | name
b)强制删除容器(可以删除运行中的容器):docker rm -f id | name
c)批量删除容器:docker rm -f $(docker ps -qa)
docker logs -f id | name
a)查看当前容器的日志信息,例如查看 tomcat_1 容器的日志
- [root@VM-8-17-centos ~]# docker logs tomcat_1
- 23-Dec-2023 12:50:00.505 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server version: Apache Tomcat/8.0.53
- 23-Dec-2023 12:50:00.508 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server built: Jun 29 2018 14:42:45 UTC
- 23-Dec-2023 12:50:00.508 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server number: 8.0.53.0
- 23-Dec-2023 12:50:00.508 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Name: Linux
- 23-Dec-2023 12:50:00.508 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Version: 3.10.0-1160.99.1.el7.x86_64
- 23-Dec-2023 12:50:00.509 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Architecture: amd64
- 23-Dec-2023 12:50:00.509 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Java Home: /usr/lib/jvm/java-7-openjdk-amd64/jre
- 23-Dec-2023 12:50:00.509 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Version: 1.7.0_181-b01
- 23-Dec-2023 12:50:00.509 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Vendor: Oracle Corporation
- 23-Dec-2023 12:50:00.509 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_BASE: /usr/local/tomcat
- 23-Dec-2023 12:50:00.509 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_HOME: /usr/local/tomcat
- 23-Dec-2023 12:50:00.510 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties
- 23-Dec-2023 12:50:00.510 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
- 23-Dec-2023 12:50:00.510 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djdk.tls.ephemeralDHKeySize=2048
- 23-Dec-2023 12:50:00.510 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.protocol.handler.pkgs=org.apache.catalina.webresources
- 23-Dec-2023 12:50:00.510 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dignore.endorsed.dirs=
- 23-Dec-2023 12:50:00.510 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.base=/usr/local/tomcat
- 23-Dec-2023 12:50:00.510 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.home=/usr/local/tomcat
- 23-Dec-2023 12:50:00.510 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.io.tmpdir=/usr/local/tomcat/temp
- 23-Dec-2023 12:50:00.511 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent Loaded APR based Apache Tomcat Native library 1.2.17 using APR version 1.5.1.
- 23-Dec-2023 12:50:00.511 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent APR capabilities: IPv6 [true], sendfile [true], accept filters [false], random [true].
- 23-Dec-2023 12:50:00.515 INFO [main] org.apache.catalina.core.AprLifecycleListener.initializeSSL OpenSSL successfully initialized (OpenSSL 1.1.0f 25 May 2017)
- 23-Dec-2023 12:50:00.712 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["http-apr-8080"]
- 23-Dec-2023 12:50:00.724 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["ajp-apr-8009"]
- 23-Dec-2023 12:50:00.726 INFO [main] org.apache.catalina.startup.Catalina.load Initialization processed in 920 ms
- 23-Dec-2023 12:50:00.780 INFO [main] org.apache.catalina.core.StandardService.startInternal Starting service Catalina
- 23-Dec-2023 12:50:00.780 INFO [main] org.apache.catalina.core.StandardEngine.startInternal Starting Servlet Engine: Apache Tomcat/8.0.53
- 23-Dec-2023 12:50:00.795 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /usr/local/tomcat/webapps/docs
- 23-Dec-2023 12:50:01.435 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /usr/local/tomcat/webapps/docs has finished in 639 ms
- 23-Dec-2023 12:50:01.435 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /usr/local/tomcat/webapps/examples
- 23-Dec-2023 12:50:01.931 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /usr/local/tomcat/webapps/examples has finished in 496 ms
- 23-Dec-2023 12:50:01.931 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /usr/local/tomcat/webapps/host-manager
- 23-Dec-2023 12:50:02.001 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /usr/local/tomcat/webapps/host-manager has finished in 70 ms
- 23-Dec-2023 12:50:02.002 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /usr/local/tomcat/webapps/manager
- 23-Dec-2023 12:50:02.075 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /usr/local/tomcat/webapps/manager has finished in 73 ms
- 23-Dec-2023 12:50:02.075 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /usr/local/tomcat/webapps/ROOT
- 23-Dec-2023 12:50:02.108 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /usr/local/tomcat/webapps/ROOT has finished in 33 ms
- 23-Dec-2023 12:50:02.118 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["http-apr-8080"]
- 23-Dec-2023 12:50:02.152 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["ajp-apr-8009"]
- 23-Dec-2023 12:50:02.155 INFO [main] org.apache.catalina.startup.Catalina.start Server startup in 1429 ms
b)通过 -f 实时监控容器内服务的日志:docker logs -f id | name
docker exec -it(交互模式) id | name bash
a)例如进入 tomcat_1 容器内部,然后查看容器内部的文件
- [root@VM-8-17-centos ~]# docker exec -it tomcat_1 bash
- root@e823da882acc:/usr/local/tomcat# ls
- LICENSE NOTICE RELEASE-NOTES RUNNING.txt bin conf include lib logs native-jni-lib temp webapps work
b)退出容器:exit
- root@e823da882acc:/usr/local/tomcat# exit
- exit
- [root@VM-8-17-centos ~]#
a)将容器中指定文件拷贝到宿主机:docker cp 容器id:容器中文件或目录 宿主机目录
例如将 tomcat 容器中的 /usr/local/tomcat/RUNNING.txt 文件拷贝到宿主机的 /root/cyk/ 目录下
- [root@VM-8-17-centos cyk]# docker ps
- CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
- e823da882acc tomcat:8.0 "catalina.sh run" 11 minutes ago Up 11 minutes 0.0.0.0:8082->8080/tcp, :::8082->8080/tcp tomcat_1
- abc6284fe34d redis:5.0.9 "docker-entrypoint.s…" 5 weeks ago Up 5 weeks 0.0.0.0:6380->6379/tcp, :::6380->6379/tcp redis
- d442ff7829df nacos/nacos-server:1.4.2 "bin/docker-startup.…" 6 weeks ago Up 5 weeks 0.0.0.0:8848->8848/tcp, :::8848->8848/tcp nacos
- fc16ae62dc0f mysql:5.7 "docker-entrypoint.s…" 7 weeks ago Up 7 weeks 33060/tcp, 0.0.0.0:3307->3306/tcp, :::3307->3306/tcp mysql
- a7dbf979b1e6 rabbitmq:3.8-management "docker-entrypoint.s…" 7 weeks ago Up 7 weeks 4369/tcp, 5671/tcp, 0.0.0.0:5672->5672/tcp, :::5672->5672/tcp, 15671/tcp, 15691-15692/tcp, 25672/tcp, 0.0.0.0:15672->15672/tcp, :::15672->15672/tcp mq
- [root@VM-8-17-centos cyk]#
- [root@VM-8-17-centos cyk]# docker cp e8:/usr/local/tomcat/RUNNING.txt /root/cyk/
- Successfully copied 17.9kB to /root/cyk/
- [root@VM-8-17-centos cyk]# ls
- RUNNING.txt
Ps:这里的 e8 是 tomcat_1 容器 id 的简写,只要能区分开,怎么简写都可以
b)将宿主机中指定文件拷贝到容器内:docker cp 宿主机目录 容器id:容器中文件或目录
a)将 xxx.war 上传到 linux 服务器
b)通过 docker cp 命令将 xxx.war 赋值到 tomcat 的 webapp 目录中即可.
c)使用 ip 端口进行测试访问即可.
docker top 容器id | name
a)查看 tomcat_1 容器内运行的进程信息
- [root@VM-8-17-centos cyk]# docker top tomcat_1
- UID PID PPID C STIME TTY TIME CMD
- root 32112 32092 0 20:49 ? 00:00:05 /docker-java-home/jre/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dignore.endorsed.dirs= -classpath /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar -Dcatalina.base=/usr/local/tomcat -Dcatalina.home=/usr/local/tomcat -Djava.io.tmpdir=/usr/local/tomcat/temp org.apache.catalina.startup.Bootstrap start
docker inspect 容器id | name
a)例如查看 tomcat_1 容器内部细节
- [root@VM-8-17-centos cyk]# docker inspect tomcat_1
- [
- {
- "Id": "e823da882accc99496e297da6cbf0004e3b1033304f65d6a2d3e538a36d53665",
- "Created": "2023-12-23T12:49:58.845311366Z",
- "Path": "catalina.sh",
- "Args": [
- "run"
- ],
- "State": {
- "Status": "running",
- "Running": true,
- "Paused": false,
- "Restarting": false,
- "OOMKilled": false,
- "Dead": false,
- "Pid": 32112,
- "ExitCode": 0,
- "Error": "",
- "StartedAt": "2023-12-23T12:49:59.234928823Z",
- "FinishedAt": "0001-01-01T00:00:00Z"
- },
- "Image": "sha256:ef6a7c98d192507d6066dcf24e44bec66d07ec9cf7c55d8d3d1ea0a24660bdef",
- "ResolvConfPath": "/var/lib/docker/containers/e823da882accc99496e297da6cbf0004e3b1033304f65d6a2d3e538a36d53665/resolv.conf",
- "HostnamePath": "/var/lib/docker/containers/e823da882accc99496e297da6cbf0004e3b1033304f65d6a2d3e538a36d53665/hostname",
- "HostsPath": "/var/lib/docker/containers/e823da882accc99496e297da6cbf0004e3b1033304f65d6a2d3e538a36d53665/hosts",
- "LogPath": "/var/lib/docker/containers/e823da882accc99496e297da6cbf0004e3b1033304f65d6a2d3e538a36d53665/e823da882accc99496e297da6cbf0004e3b1033304f65d6a2d3e538a36d53665-json.log",
- "Name": "/tomcat_1",
- "RestartCount": 0,
- "Driver": "overlay2",
- "Platform": "linux",
- "MountLabel": "",
- "ProcessLabel": "",
- "AppArmorProfile": "",
- "ExecIDs": null,
- "HostConfig": {
- "Binds": null,
- "ContainerIDFile": "",
- "LogConfig": {
- "Type": "json-file",
- "Config": {}
- },
- "NetworkMode": "default",
- "PortBindings": {
- "8080/tcp": [
- {
- "HostIp": "",
- "HostPort": "8082"
- }
- ]
- },
- "RestartPolicy": {
- "Name": "no",
- "MaximumRetryCount": 0
- },
- "AutoRemove": false,
- "VolumeDriver": "",
- "VolumesFrom": null,
- "ConsoleSize": [
- 36,
- 171
- ],
- "CapAdd": null,
- "CapDrop": null,
- "CgroupnsMode": "host",
- "Dns": [],
- "DnsOptions": [],
- "DnsSearch": [],
- "ExtraHosts": null,
- "GroupAdd": null,
- "IpcMode": "private",
- "Cgroup": "",
- "Links": null,
- "OomScoreAdj": 0,
- "PidMode": "",
- "Privileged": false,
- "PublishAllPorts": false,
- "ReadonlyRootfs": false,
- "SecurityOpt": null,
- "UTSMode": "",
- "UsernsMode": "",
- "ShmSize": 67108864,
- "Runtime": "runc",
- "Isolation": "",
- "CpuShares": 0,
- "Memory": 0,
- "NanoCpus": 0,
- "CgroupParent": "",
- "BlkioWeight": 0,
- "BlkioWeightDevice": [],
- "BlkioDeviceReadBps": [],
- "BlkioDeviceWriteBps": [],
- "BlkioDeviceReadIOps": [],
- "BlkioDeviceWriteIOps": [],
- "CpuPeriod": 0,
- "CpuQuota": 0,
- "CpuRealtimePeriod": 0,
- "CpuRealtimeRuntime": 0,
- "CpusetCpus": "",
- "CpusetMems": "",
- "Devices": [],
- "DeviceCgroupRules": null,
- "DeviceRequests": null,
- "MemoryReservation": 0,
- "MemorySwap": 0,
- "MemorySwappiness": null,
- "OomKillDisable": false,
- "PidsLimit": null,
- "Ulimits": null,
- "CpuCount": 0,
- "CpuPercent": 0,
- "IOMaximumIOps": 0,
- "IOMaximumBandwidth": 0,
- "MaskedPaths": [
- "/proc/asound",
- "/proc/acpi",
- "/proc/kcore",
- "/proc/keys",
- "/proc/latency_stats",
- "/proc/timer_list",
- "/proc/timer_stats",
- "/proc/sched_debug",
- "/proc/scsi",
- "/sys/firmware",
- "/sys/devices/virtual/powercap"
- ],
- "ReadonlyPaths": [
- "/proc/bus",
- "/proc/fs",
- "/proc/irq",
- "/proc/sys",
- "/proc/sysrq-trigger"
- ]
- },
- "GraphDriver": {
- "Data": {
- "LowerDir": "/var/lib/docker/overlay2/1807f8589086eb51f861c4938ddbd1da9395c48ef3b1bc40ded35195707c07db-init/diff:/var/lib/docker/overlay2/4272a408897873c3e991cc410cc9f3191dc2ebb5a8f940e386746a8b62e45b77/diff:/var/lib/docker/overlay2/aefe736cf7883ec152540cf245eebf8d1daee7ebd7752db0f2aed440db9c436e/diff:/var/lib/docker/overlay2/eab8218d1796d5eaa07da26ded1c78c01b0d7dfaf96654c7223f94fa022804ca/diff:/var/lib/docker/overlay2/6a1ae79728973f2f3dde69c44b8bf36c7e3e8dee18a67777f2c18298c27b72e3/diff:/var/lib/docker/overlay2/4284addc9df80d1ca1f05dddd850dd749c9cc55c34f28b0876d5eaacc2d576e5/diff:/var/lib/docker/overlay2/ed77212064855a9fee7e0403c15a23667de8c08fe7d59635f328c1b91e8e0af1/diff:/var/lib/docker/overlay2/1e0a0cebf48bf83030ebecda040939bc9eb11094883fa716bde5789cfc8d5ed1/diff:/var/lib/docker/overlay2/648a8998071f0296333f194e322e6785fb01b763e684543c6d665eb74965567b/diff:/var/lib/docker/overlay2/96aaa73c0076e21994ad88907d5f425ebf630fab7e091eb301073b4429c2f609/diff:/var/lib/docker/overlay2/6315239813db62569e9e729bbf20f7d6220df8a170fbd4fae2e1eba015e4f51d/diff:/var/lib/docker/overlay2/6951fbc42d9b579b84c403fdb31421d105aac328ad81e2e3e1d55a11556afcf7/diff",
- "MergedDir": "/var/lib/docker/overlay2/1807f8589086eb51f861c4938ddbd1da9395c48ef3b1bc40ded35195707c07db/merged",
- "UpperDir": "/var/lib/docker/overlay2/1807f8589086eb51f861c4938ddbd1da9395c48ef3b1bc40ded35195707c07db/diff",
- "WorkDir": "/var/lib/docker/overlay2/1807f8589086eb51f861c4938ddbd1da9395c48ef3b1bc40ded35195707c07db/work"
- },
- "Name": "overlay2"
- },
- "Mounts": [],
- "Config": {
- "Hostname": "e823da882acc",
- "Domainname": "",
- "User": "",
- "AttachStdin": false,
- "AttachStdout": false,
- "AttachStderr": false,
- "ExposedPorts": {
- "8080/tcp": {}
- },
- "Tty": false,
- "OpenStdin": false,
- "StdinOnce": false,
- "Env": [
- "PATH=/usr/local/tomcat/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
- "LANG=C.UTF-8",
- "JAVA_HOME=/docker-java-home/jre",
- "JAVA_VERSION=7u181",
- "JAVA_DEBIAN_VERSION=7u181-2.6.14-1~deb8u1",
- "CATALINA_HOME=/usr/local/tomcat",
- "TOMCAT_NATIVE_LIBDIR=/usr/local/tomcat/native-jni-lib",
- "LD_LIBRARY_PATH=/usr/local/tomcat/native-jni-lib",
- "OPENSSL_VERSION=1.1.0f-3+deb9u2",
- "GPG_KEYS=05AB33110949707C93A279E3D3EFE6B686867BA6 07E48665A34DCAFAE522E5E6266191C37C037D42 47309207D818FFD8DCD3F83F1931D684307A10A5 541FBE7D8F78B25E055DDEE13C370389288584E7 61B832AC2F1C5A90F0F9B00A1C506407564C17A3 713DA88BE50911535FE716F5208B0AB1D63011C7 79F7026C690BAA50B92CD8B66A3AD3F4F22C4FED 9BA44C2621385CB966EBA586F72C284D731FABEE A27677289986DB50844682F8ACB77FC2E86E29AC A9C5DF4D22E99998D9875A5110C01C5A2F6059E7 DCFD35E0BF8CA7344752DE8B6FB21E8933C60243 F3A04C595DB5B6A5F1ECA43E3B7BBB100D811BBE F7DA48BB64BCB84ECBA7EE6935CD23C10D498E23",
- "TOMCAT_MAJOR=8",
- "TOMCAT_VERSION=8.0.53",
- "TOMCAT_SHA512=cd8a4e48a629a2f2bb4ce6b101ebcce41da52b506064396ec1b2915c0b0d8d82123091242f2929a649bcd8b65ecf6cd1ab9c7d90ac0e261821097ab6fbe22df9",
- "TOMCAT_TGZ_URLS=https://www.apache.org/dyn/closer.cgi?action=download&filename=tomcat/tomcat-8/v8.0.53/bin/apache-tomcat-8.0.53.tar.gz \thttps://www-us.apache.org/dist/tomcat/tomcat-8/v8.0.53/bin/apache-tomcat-8.0.53.tar.gz \thttps://www.apache.org/dist/tomcat/tomcat-8/v8.0.53/bin/apache-tomcat-8.0.53.tar.gz \thttps://archive.apache.org/dist/tomcat/tomcat-8/v8.0.53/bin/apache-tomcat-8.0.53.tar.gz",
- "TOMCAT_ASC_URLS=https://www.apache.org/dyn/closer.cgi?action=download&filename=tomcat/tomcat-8/v8.0.53/bin/apache-tomcat-8.0.53.tar.gz.asc \thttps://www-us.apache.org/dist/tomcat/tomcat-8/v8.0.53/bin/apache-tomcat-8.0.53.tar.gz.asc \thttps://www.apache.org/dist/tomcat/tomcat-8/v8.0.53/bin/apache-tomcat-8.0.53.tar.gz.asc \thttps://archive.apache.org/dist/tomcat/tomcat-8/v8.0.53/bin/apache-tomcat-8.0.53.tar.gz.asc"
- ],
- "Cmd": [
- "catalina.sh",
- "run"
- ],
- "Image": "tomcat:8.0",
- "Volumes": null,
- "WorkingDir": "/usr/local/tomcat",
- "Entrypoint": null,
- "OnBuild": null,
- "Labels": {}
- },
- "NetworkSettings": {
- "Bridge": "",
- "SandboxID": "7c5c3740d5acbd7748c07d0203d0833f72ebb617c7b3d0e76a3e6d8a2510e062",
- "HairpinMode": false,
- "LinkLocalIPv6Address": "",
- "LinkLocalIPv6PrefixLen": 0,
- "Ports": {
- "8080/tcp": [
- {
- "HostIp": "0.0.0.0",
- "HostPort": "8082"
- },
- {
- "HostIp": "::",
- "HostPort": "8082"
- }
- ]
- },
- "SandboxKey": "/var/run/docker/netns/7c5c3740d5ac",
- "SecondaryIPAddresses": null,
- "SecondaryIPv6Addresses": null,
- "EndpointID": "2294463d89e7a91ee32cbd717403ceb9d1079fc23fca9cd251c003fa019bff0c",
- "Gateway": "172.17.0.1",
- "GlobalIPv6Address": "",
- "GlobalIPv6PrefixLen": 0,
- "IPAddress": "172.17.0.6",
- "IPPrefixLen": 16,
- "IPv6Gateway": "",
- "MacAddress": "02:42:ac:11:00:06",
- "Networks": {
- "bridge": {
- "IPAMConfig": null,
- "Links": null,
- "Aliases": null,
- "NetworkID": "3be1ce6eea6f4f139c964c6afa94dd46fa60576e291edbc56d730c3c977b018c",
- "EndpointID": "2294463d89e7a91ee32cbd717403ceb9d1079fc23fca9cd251c003fa019bff0c",
- "Gateway": "172.17.0.1",
- "IPAddress": "172.17.0.6",
- "IPPrefixLen": 16,
- "IPv6Gateway": "",
- "GlobalIPv6Address": "",
- "GlobalIPv6PrefixLen": 0,
- "MacAddress": "02:42:ac:11:00:06",
- "DriverOpts": null
- }
- }
- }
- }
- ]
a)主要作用:
用来实现容器中数据和宿主机中数据进行映射的(这里可以类比 Vue 中的双向绑定,修改任意一方,另一方都会跟着修改)
b)使用场景:
c)注意事项:数据卷只能在容器首次启动时设置.
容器首次启动时指定 -v 参数
a)使用绝对路径设置数据卷
docker run -v 宿主机绝对路径:容器内绝对路径:ro .....(其他设置)
ro:表示 ready only,也就是只读的意思,如果在设置数据卷时指定 ro,代表日后从容器内访问该路径时是只读的.
Ps:这种方式会将容器该路径下的原始内容全部清空,始终以宿主机路径为主.
b)使用别名方式设置数据卷
docker run -v aa:/usr/local/tomcat/webapps ......(其他配置)
aa:
Ps:docker 根据别名创建目录默认在 /var/lib/docker/volumes/ 中.
通过 find 命令也可以查找到该路径
通过 docker volume ls 即可查看
如下
- [root@VM-8-17-centos ~]# docker volume ls
- DRIVER VOLUME NAME
- local 1fa61b3ede8d2275b627925fb6c9270d0ce90cf802297a442cba63cac2bd8318
- local 5ea35e4af2de3e83feb7a290ad28cbb1efcea43f7fc239a24083a33dd358ee7d
- local 6d9ce8b53920cc2e57b15c6828e64055edffda6ecc8c70d51e3dbe720ae7525c
- local 6e7cdbf67ca74fd270fa99c64ac5e7a0608d419c68b35f1159918365f430ada4
- local 9b4f364313d3b30f69e9ef0cd33f023939ddf7b3477fe8d59957be15bf35116a
- local 25c87a7dccf3b2d8a72592c928e802edfec4243ec276442fa4d7045c65a95d7a
- local 37b3dbb78b118db577912d599c9b18b5f3de38519a74fd6f14b7a90a7e4a6ed7
- local 53b0ba745b895e113d38b7adea5775122e7468722d3c7050b8209166ef730608
- local 70b2e875c2ad077202f8e9d3503cc4e2ad48b119b5150ef47cfa98e6b713c1b2
- local 91e437d40a873ed676500c8c574c3bcfd7081ce3a800f0d15f9c89ee2c507ba4
- local 126a034b14738aa704b485b57d6146af54aa8c8778fc9645edf94b9cd979b651
- local 322c7e1b4e8c21fef177655444afe1a87e478a175502d2c5fa2223c22bd7c212
- local 3639cf3d08c4e838c675b026e572832b6cd2c7d75cb6052635374a2266a09b18
- local 7810b502a8c2334df68de79a88b4fb096c4c77d88380346022f26a83e830513f
- local 9362e057c7d64db8887a1da36089b053bebdd473a1b4213f7b3afa45fd1c5070
- local 41589e0d737e2b6794904e4630a621618c99e86d171230b7718a2c505f38fd1c
- local 176090d6b2c68af41962863317d97e912be5ca4b8917158db49ad549ad6f4561
- local 380554b41086565ff8e677f7de48e7fd4565bd28b4c193b4e859c20bef16e5c7
- local 651871ea674decee5310c1f80da30136df924cf46e377b595c8e2af3a280b162
- local 46888212f86c0ad196e798d3d9d77ca1c5b91ce55b2055dca13e1a8d07e7f7b7
- local 048558136abb49fbb611aecacb9080ad7cb931f9b4ac1e29b350a81572f507a8
- local a6e06baf59e0a30eb6a09cab7cebffc0500ebcfdad86a728fd4d68f98cce33fb
- local a81e39eb18b192822d177c48734c2d3cd7b52c1b1e9d19864438a13d83ec2288
- local aca12e56a6ffe71e33e46fd12c93aa0fc12abdc90a9f3778883d68a4b16e7633
- local c5c137ece3e1f8e210f75cc3141a2422a65de832111e3505f5ad0189f265088b
- local d50c81b40c2cd31f267e894048aa907b68e336cc0d9b74060112ffc30e67b4d0
- local e21898073e75de299a86adef3a8b2d9ed577a36aa3c5771d8f8d33de4cbb8ba4
- local ebd4d620e209c9062a5e6f9058d574e0a74e4554b1af108f7ffa1dc4d9f6ecb8
- local ecc0c22ac9231a32c7361cc6e2c81b9239a34e86e2c14fc60b01a5dea778658e
- local f2e477434d0dfe055b3cb1e8b7f998ea243d4001c7e10cfa0b81603673b51da3
- local f49c6495220342f9d587f1ac7653ddca92a7c43737dea8178cc8a3165514d974
docker volume create 数据卷别名
例如创建数据卷别名为 aa,然后查看列表
- [root@VM-8-17-centos ~]# docker volume create aaa
- aaa
- [root@VM-8-17-centos ~]# docker volume ls
- DRIVER VOLUME NAME
- local 1fa61b3ede8d2275b627925fb6c9270d0ce90cf802297a442cba63cac2bd8318
- local 5ea35e4af2de3e83feb7a290ad28cbb1efcea43f7fc239a24083a33dd358ee7d
- local 6d9ce8b53920cc2e57b15c6828e64055edffda6ecc8c70d51e3dbe720ae7525c
- local 6e7cdbf67ca74fd270fa99c64ac5e7a0608d419c68b35f1159918365f430ada4
- local 9b4f364313d3b30f69e9ef0cd33f023939ddf7b3477fe8d59957be15bf35116a
- local 25c87a7dccf3b2d8a72592c928e802edfec4243ec276442fa4d7045c65a95d7a
- local 37b3dbb78b118db577912d599c9b18b5f3de38519a74fd6f14b7a90a7e4a6ed7
- local 53b0ba745b895e113d38b7adea5775122e7468722d3c7050b8209166ef730608
- local 70b2e875c2ad077202f8e9d3503cc4e2ad48b119b5150ef47cfa98e6b713c1b2
- local 91e437d40a873ed676500c8c574c3bcfd7081ce3a800f0d15f9c89ee2c507ba4
- local 126a034b14738aa704b485b57d6146af54aa8c8778fc9645edf94b9cd979b651
- local 322c7e1b4e8c21fef177655444afe1a87e478a175502d2c5fa2223c22bd7c212
- local 3639cf3d08c4e838c675b026e572832b6cd2c7d75cb6052635374a2266a09b18
- local 7810b502a8c2334df68de79a88b4fb096c4c77d88380346022f26a83e830513f
- local 9362e057c7d64db8887a1da36089b053bebdd473a1b4213f7b3afa45fd1c5070
- local 41589e0d737e2b6794904e4630a621618c99e86d171230b7718a2c505f38fd1c
- local 176090d6b2c68af41962863317d97e912be5ca4b8917158db49ad549ad6f4561
- local 380554b41086565ff8e677f7de48e7fd4565bd28b4c193b4e859c20bef16e5c7
- local 651871ea674decee5310c1f80da30136df924cf46e377b595c8e2af3a280b162
- local 46888212f86c0ad196e798d3d9d77ca1c5b91ce55b2055dca13e1a8d07e7f7b7
- local 048558136abb49fbb611aecacb9080ad7cb931f9b4ac1e29b350a81572f507a8
- local a6e06baf59e0a30eb6a09cab7cebffc0500ebcfdad86a728fd4d68f98cce33fb
- local a81e39eb18b192822d177c48734c2d3cd7b52c1b1e9d19864438a13d83ec2288
- local aaa
- local aca12e56a6ffe71e33e46fd12c93aa0fc12abdc90a9f3778883d68a4b16e7633
- local c5c137ece3e1f8e210f75cc3141a2422a65de832111e3505f5ad0189f265088b
- local d50c81b40c2cd31f267e894048aa907b68e336cc0d9b74060112ffc30e67b4d0
- local e21898073e75de299a86adef3a8b2d9ed577a36aa3c5771d8f8d33de4cbb8ba4
- local ebd4d620e209c9062a5e6f9058d574e0a74e4554b1af108f7ffa1dc4d9f6ecb8
- local ecc0c22ac9231a32c7361cc6e2c81b9239a34e86e2c14fc60b01a5dea778658e
- local f2e477434d0dfe055b3cb1e8b7f998ea243d4001c7e10cfa0b81603673b51da3
- local f49c6495220342f9d587f1ac7653ddca92a7c43737dea8178cc8a3165514d974
数据卷详细信息中就包含了数据卷的在宿主机的绝对路径
docker volume inspect 数据卷别名
例如查看别名 aaa 的详细信息
- [root@VM-8-17-centos ~]# docker volume inspect aaa
- [
- {
- "CreatedAt": "2023-12-27T15:54:07+08:00",
- "Driver": "local",
- "Labels": null,
- "Mountpoint": "/var/lib/docker/volumes/aaa/_data",
- "Name": "aaa",
- "Options": null,
- "Scope": "local"
- }
- ]
Ps:Mountpoint 就是在宿主机的绝对路径
docker volume rm 数据卷别名
例如删除别名为 aaa 的数据卷
- [root@VM-8-17-centos ~]# docker volume rm aaa
- aaa
a)回顾三个核心概念
仓库 repository:docker 官方维护的一个仓库,用来集中存储镜像.
镜像 image:一个镜像代表一个软件服务,特点就是 "只读".
容器 container:镜像每运行一次形成一个容器,运行的容器代表一个正在运行的软件服务.
b)为什么要将容器打包成一个新的镜像?
容器可读可写,那么基于这个特性就可以对容器进行自己的深度定制.
将容器打包成一个新的镜像,日后运行的这个容器就存在原始定制的特性.
c)原理图
docker commit -m "对镜像的描述" -a "作者名称" 容器id | name 镜像名:版本
如下案例
- [root@VM-8-17-centos cyk]# docker ps -a
- CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
- e823da882acc tomcat:8.0 "catalina.sh run" About an hour ago Up About an hour 0.0.0.0:8082->8080/tcp, :::8082->8080/tcp tomcat_1
- 07a1f69b4c4c tomcat:8.0 "catalina.sh run" About an hour ago Exited (137) About an hour ago objective_taussig
- abc6284fe34d redis:5.0.9 "docker-entrypoint.s…" 5 weeks ago Up 5 weeks 0.0.0.0:6380->6379/tcp, :::6380->6379/tcp redis
- d442ff7829df nacos/nacos-server:1.4.2 "bin/docker-startup.…" 6 weeks ago Up 5 weeks 0.0.0.0:8848->8848/tcp, :::8848->8848/tcp nacos
- fc16ae62dc0f mysql:5.7 "docker-entrypoint.s…" 7 weeks ago Up 7 weeks 33060/tcp, 0.0.0.0:3307->3306/tcp, :::3307->3306/tcp mysql
- a7dbf979b1e6 rabbitmq:3.8-management "docker-entrypoint.s…" 7 weeks ago Up 7 weeks 4369/tcp, 5671/tcp, 0.0.0.0:5672->5672/tcp, :::5672->5672/tcp, 15671/tcp, 15691-15692/tcp, 25672/tcp, 0.0.0.0:15672->15672/tcp, :::15672->15672/tcp mq
- [root@VM-8-17-centos cyk]#
- [root@VM-8-17-centos cyk]#
- [root@VM-8-17-centos cyk]#
- [root@VM-8-17-centos cyk]# docker commit -m "new test tomcat" -a "cyk" e8 tomcat_cyk:8.1
- sha256:9b9add65a1f1b2a9331bac5f0c047af6a921e0850b247638256843a770b4ed6d
- [root@VM-8-17-centos cyk]# docker images
- REPOSITORY TAG IMAGE ID CREATED SIZE
- tomcat_cyk 8.1 9b9add65a1f1 10 seconds ago 356MB
- redis 5 c5da061a611a 2 years ago 110MB
- mysql 5.7 c20987f18b13 2 years ago 448MB
- rabbitmq 3.8-management 699038cb2b96 2 years ago 250MB
- nacos/nacos-server 1.4.2 938169b118c7 2 years ago 956MB
- redis 5.0.9 987b553c835f 3 years ago 98.3MB
- bladex/sentinel-dashboard 1.8.0 61c10eaefbcf 3 years ago 147MB
- nacos/nacos-server 1.2.0 763941e566bb 3 years ago 732MB
- bladex/sentinel-dashboard 1.7.1 d12e18546bfd 3 years ago 148MB
- tomcat 8.0 ef6a7c98d192 5 years ago 356MB
a)备份镜像: docker save 镜像名:tag -o (镜像名-tag).tar
b)恢复镜像:docker load -i xxx.tar
例如 docker load -i tomcat-8.0.tar
c)如果是从官网下载的 tar 包需要通过 docker import 命令加载镜像,使用如下:
docker import tar文件 自定义镜像名:自定义版本号
例如要将官网下载的 Sentinel-1.8.3.tar.gz 加载成镜像:
- [root@VM-8-17-centos ~]# docker load -i Sentinel-1.8.3.tar.gz
- open /var/lib/docker/tmp/docker-import-3671647515/Sentinel-1.8.3/json: no such file or directory
- [root@VM-8-17-centos ~]#
- [root@VM-8-17-centos ~]#
- [root@VM-8-17-centos ~]# docker import Sentinel-1.8.3.tar.gz sentinel:1.8.3
- sha256:e313da793ccfd9a37e902569587f7944fac2676addceef452d430019b310c39a
- [root@VM-8-17-centos ~]#
- [root@VM-8-17-centos ~]#
- [root@VM-8-17-centos ~]# docker images
- REPOSITORY TAG IMAGE ID CREATED SIZE
- sentinel 1.8.3 e313da793ccf 8 seconds ago 7.75MB
此时直接通过原先的 docker run 命令可能会报错:docker: Error response from daemon: No command specified.
实际上这里 import 导出的并没有带 CMD 命令,因此需要在运行的时候手动指定,并且每个镜像的命令都不太一样,具体可以去官网看.
Ps:但还是不建议这种操作,建议还是去 docker hub 上去找镜像
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。