一、安装Docker

1.1 Docker版本

当前有两个版本:社区版(CE) 和 企业版(EE)目前我们安装CE版本。

1.2 安装命令

wget -O- https://get.docker.com/ | sh

有个报错信息:




docker如何使用wget dockerfile wget_docker安装wget


解决方法:

手动下载并安装,下载地址页面:https://centos.pkgs.org/7/docker-ce-stable-x86_64/containerd.io-1.2.13-3.1.el7.x86_64.rpm.html

wget https://download.docker.com/linux/centos/7/x86_64/stable/Packages/containerd.io-1.2.13-3.1.el7.x86_64.rpm
yum install -y ./containerd.io-1.2.13-3.1.el7.x86_64.rpm


docker如何使用wget dockerfile wget_docker如何使用wget_02


现在再重新执行一下安装Docker的脚本命令:wget -O- https://get.docker.com/ | sh 即可安装成功。

1.3 设置开机启动

systemctl enable docker
service docker start

可以看到我们已经安装成功了。


docker如何使用wget dockerfile wget_java_03


二、镜像(image)

2.1 镜像的网址

官方网址: http://www.docker.com/

阿里云镜像:https://dev.aliyun.com/

2.2 拉取镜像

alpine 镜像简介:

Alpine 操作系统是一个面向安全的轻型 Linux 发行版,Alpine 镜像可以适用于更多常用场景,并且是一个优秀的可以适用于生产的基础系统/环境,仅仅只有 5 MB 左右


docker如何使用wget dockerfile wget_docker安装wget_04


docker如何使用wget dockerfile wget_docker_05


2.3 常用的镜像命令

//拉取镜像
docker image pull 镜像名称
//列出本地的所有镜像
docker image ls
//展示镜像的细节
docker image inspect 镜像ID
//删除某个镜像(当镜像存在关联的容器,要先停止容器运行后,才可以删除镜像)
docker image rm 镜像ID

三、容器(container)

3.1 容器的概念

容器:是镜像的运行实例。

3.2 常用的容器命令

//启动新容器(-it -id 可选项)
// -i 运行容器
// -t 以终端交互方法(伪终端), -d 以守护式后台运行方式
// --name 容器名称
// -v 映射文件共享
// -p 映射端口
docker container run -id --name=myjavadev alpine
//重启容器运行
docker container start 容器名称/ID
//列出所有容器 -a显示所有容器
docker container ls -a
//停止容器运行
docker container stop 容器名称/ID
//展示容器细节
docker container inspect  容器名称/ID
//删除容器
docker container rm  容器名称/ID
//进入运行容器的内部,新建一个进程
docker container exec -it  容器名称/ID sh
//断开Shell与容器之间的链接
exit
//拷贝文件命令
docker cp 1.txt myjavadev:/usr/local/

以下是以守护式运行一个容器:--id 参数


docker如何使用wget dockerfile wget_docker如何使用wget_06


重新启动容器/停止


docker如何使用wget dockerfile wget_docker安装wget_07


拷贝文件命令


docker如何使用wget dockerfile wget_java_08


修改现有容器的名称


docker如何使用wget dockerfile wget_docker安装wget_09


四、生成Java开发环境镜像

4.1 官方常用的t镜像

4.2 Docker Compose部署测试环境

安装 docker-compose工具命令:

//此处使用pip进行安装
yum -y install epel-release
yum -y install python-pip
//安装
yum -y install python-pip
//安装docker-compose
pip install docker-compose

安装报错:


docker如何使用wget dockerfile wget_java_10


解决方法:发现Centos8默认没有安装 Python,执行安装命令:(python36 自带 pip)直接安装python36就可以了

//安装epel :
yum install python36
//安装docker-compose
/usr/bin/pip3.6 install docker-compose


docker如何使用wget dockerfile wget_docker安装wget_11


已经成功安装了:docker-compose 模块工具了。


docker如何使用wget dockerfile wget_docker_12


4.3 生成一份javaweb-dev-docker-compose.yml配置文件

快速部署命令:

$ git clone https://github.com/hqlsoftware/javaweb-dev-docker-compose.git
$ cd javaweb-dev-docker-compose
$ sh init.sh

运维命令:

# docker-compose 命令帮助
$ docker-compose help
# 创建并启动 docker 编排服务
$ docker-compose up
# 停止并移除 docker 编排服务 (更改配置文件时建议使用)
$ docker-compose down
# ssh 登入 javaweb 容器
$ docker-compose exec javaweb-dev-docker-compose bash

速度有些慢,要耐心等待。


docker如何使用wget dockerfile wget_docker安装wget_13


4.3 测试运行

目前 javaweb-dev-docker-compose.yml 还有一些问题,正在调试中,调试好,提交代码到git上面

之前内存使用是:


docker如何使用wget dockerfile wget_java_14


安装好docker后内存是:


docker如何使用wget dockerfile wget_docker安装wget_15


五、总结

Docker 优点很多,可以帮我们快速部署和启动应用。方便开发,同时也方便运维。