|
|
|
|
|
|
|
|
|
|
|
|
|
|
# $Docker$使用方法
|
|
|
|
|
|
|
|
|
|
### 一、安装与配置
|
|
|
|
|
|
|
|
|
|
#### 1、使用官方安装脚本自动安装
|
|
|
|
|
|
|
|
|
|
```shell
|
|
|
|
|
yum install -y yum-utils
|
|
|
|
|
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
|
|
|
|
|
yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin -y
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#### 2、配置镜像源
|
|
|
|
|
|
|
|
|
|
> 因为 “**未知**” 的原因,造成国内的$Docker$源全部失效,只好使用老毛子的$Docker$源,科学无国界~
|
|
|
|
|
|
|
|
|
|
```shell
|
|
|
|
|
mkdir -p /etc/docker
|
|
|
|
|
|
|
|
|
|
tee /etc/docker/daemon.json <<EOF
|
|
|
|
|
{
|
|
|
|
|
"registry-mirrors": [
|
|
|
|
|
"https://docker.m.daocloud.io",
|
|
|
|
|
"https://huecker.io",
|
|
|
|
|
"https://dockerhub.timeweb.cloud",
|
|
|
|
|
"https://noohub.ru"
|
|
|
|
|
]
|
|
|
|
|
}
|
|
|
|
|
EOF
|
|
|
|
|
|
|
|
|
|
systemctl daemon-reload
|
|
|
|
|
systemctl restart docker
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
#### 3、启动$Docker$
|
|
|
|
|
|
|
|
|
|
```shell
|
|
|
|
|
systemctl start docker
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
#### 4、检查是否安装成功
|
|
|
|
|
|
|
|
|
|
```shell
|
|
|
|
|
docker run hello-world
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
#### 5、卸载 docker
|
|
|
|
|
|
|
|
|
|
```shell
|
|
|
|
|
yum remove docker-ce
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
**删除镜像、容器、配置文件等内容**
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
rm -rf /var/lib/docker
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
### 二、下载并使用容器
|
|
|
|
|
|
|
|
|
|
下面以$Tomcat$为例,介绍如何下载并使用容器:
|
|
|
|
|
|
|
|
|
|
#### 查看可用版本
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
docker search tomcat
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|

|
|
|
|
|
|
|
|
|
|
#### 下载$Tomcat$镜像
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
docker pull tomcat # 下载最新版本的Tomcat
|
|
|
|
|
|
|
|
|
|
docker pull tomcat:9.0 # 下载9.0版本的Tomcat
|
|
|
|
|
|
|
|
|
|
docker pull tomcat:8.0 # 下载8.0版本的Tomcat
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
#### 查看已经下载到机器里的$Tomcat$镜像
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
docker images|grep tomcat
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|

|
|
|
|
|
|
|
|
|
|
#### 运行$Tomcat$容器
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
docker run --name tomcat -p 8080:8080 -v $PWD/test:/usr/local/tomcat/webapps/test -d tomcat
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|

|
|
|
|
|
|
|
|
|
|
命令说明:
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
-p 8080:8080:将主机的 8080 端口映射到容器的 8080 端口
|
|
|
|
|
-v $PWD/test:/usr/local/tomcat/webapps/test: 将主机中当前目录下的 test 挂载到容器的 /test
|
|
|
|
|
-d:这个参数表示以“detached”模式运行容器,即在后台运行。
|
|
|
|
|
tomcat:这是要运行的 Docker 镜像的名称。在这个命令中,它假定您已经有了一个名为 tomcat 的本地镜像,或者 Docker 将尝试从 Docker Hub 拉取一个名为 tomcat 的公共镜像。
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
> $Tomcat$需要把 `/usr/local/tomcat/webapps.dist/`目录下的所有文件和文件夹拷贝到 `/usr/local/tomcat/webapps/`下,才能访问到小猫的页面。
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
cd /usr/local/tomcat/webapps.dist/
|
|
|
|
|
mv docs/ ../webapps/
|
|
|
|
|
mv examples/ ../webapps/
|
|
|
|
|
mv host-manager/ ../webapps/
|
|
|
|
|
mv manager/ ../webapps/
|
|
|
|
|
mv ROOT/ ../webapps/
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#### 通过浏览器访问
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
docker ps
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|

|
|
|
|
|
|
|
|
|
|

|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
### 三、$JDK1.8$实战
|
|
|
|
|
|
|
|
|
|
下载一个$JDK 1.8$的镜像
|
|
|
|
|
|
|
|
|
|
```shell
|
|
|
|
|
docker pull openjdk:8
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|

|
|
|
|
|
|
|
|
|
|
](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/BlogImages/202408061445874.png)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#### 是否已下载成功
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
docker images|grep jdk
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
#### 启动容器
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
docker run -itd --name openjdk1.8 openjdk:8 /bin/bash
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
#### 查看容器
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
docker ps -a
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
#### 删除容器
|
|
|
|
|
|
|
|
|
|

|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
docker rm -f openjdk1.8
|
|
|
|
|
或者
|
|
|
|
|
docker rm -f 4bf2bd13f5b0
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
#### 进入容器
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
docker exec -it openjdk1.8 /bin/bash
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
root@4bf2bd13f5b0:/usr/local/openjdk-8/bin# pwd
|
|
|
|
|
/usr/local/openjdk-8/bin
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
#### 将文件复制到容器外
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
docker cp openjdk1.8:/usr/local/1.txt ./
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
#### 将文件复制回容器
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
docker cp ./1.txt openjdk1.8:/usr/local/
|
|
|
|
|
```
|
|
|
|
|
|