随着微服务的应用,docker的使用现在越来越广泛,在项目中积累的学习经验在此记录一下:
docker详解传送门:这可能是最为详细的Docker入门吐血总结_邓彪1022的博客-CSDN博客
一、安装部署docker环境
1)在线安装docker
无论系统中是否有Docker,我们需要先卸载老版本,我们需要安装新版本CE,其实我们应该知道Docker有分CE社区版本和EE企业版,后者是需要付费的,我们安装CE免费版本。
yum remove docker docker-client docker-client-latest
docker-common docker-latest docker-latest-logrotate docker-logrotate
docker-selinux docker-engine-selinux docker-engine -y
1. 安装docker-ce以及必要的包
yum install -y yum-utils device-mapper-persistent-data lvm2
2. 添加稳定版本源
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
3. 安装docker-ce
yum install docker-ce
安装过程如果询问到是否继续OK,全部输入Y继续
4. 启动docker
systemctl start docker
5. 检测docker是否安装成功
docker run hello-world
最后,如果我们想要卸载docker,可以输入"yum remove docker-ce"执行卸载,以及"rm -rf /var/lib/docker"清除所有的文件目录
2)离线安装docker
docker离线安装包: https://download.csdn.net/download/romanticRose/12375568
1. 在目标计算机上将tgz包上传至/root路径下,并解压centos-local.tgz文件(具体文件名参照实际)
cd /root
tar -xvzf centos-local.tgz
2. 安装createrepo
cd /root/docker-ce-local
rpm -ivh createrepo-0.9.9-28.el7.noarch.rpm
#注:createrepo版本可能不一样,根据自己下载的包的版本安装
3. 新增docker-ce-local.repo源文件,写入以下内容
# vi /etc/yum.repos.d/docker-ce-local.repo
[docker-ce-local]
name=Local Yum
baseurl=file:///root/docker-ce-local/
gpgcheck=1
gpgkey=file:///root/docker-ce-local/gpg
enabled=1
4. 生成源索引及缓存
createrepo /root/docker-ce-local
yum makecache
5. 安装docker-ce,并忽略gpg校验
yum install docker-ce --nogpgcheck
6. 启动服务并测试
systemctl start docker.service
docker version
7. 部署过程中遇到的问题整理
寻找yum源错误问题
a. 将/etc/yum.repos.d/文件夹下的yum源备份,先移除出该文件夹
b. 执行上述安装步骤中的2
c. 安装部署docker-ce,验证通过后将yum源还原
3) docker常用命令
#docker常用命令:
1. 查看容器: docker ps
2. 查看镜像: docker images
3. 删除容器: docker rm 容器name
4. 删除镜像: docker rmi 镜像id
5. 创建容器: docker run --name dockermysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=654321 mysql:5.7.23
6. 启动容器: docker start 容器name #docker start dockermysql
7. 重启容器: docker restart dockermysql
8. 停止容器: docker stop dockermysql
9. 容器交互: docker exec -it dockermysql bash #或 docker attach dockermysql
10.退出交互: Ctrl+P,Ctrl+Q(Ctrl键一直保持按下)
11.设置开机自启: systemctl enable docker
12.容器设置自启,update命令: docker update --restart=always aeccnginx
二、安装JDK(这里安装的是jdk-8u221-linux-x64.tar.gz)
1) 服务器环境安装JDK
百度网盘链接: https://pan.baidu.com/s/1RfjTxZ6e6fg37aAn2GlpcQ
提取码: en8f
复制这段内容后打开百度网盘手机App,操作更方便哦
解压jdk
移动文件到usr/java
配置环境变量 vi /etc/profile
export JAVA_HOME=/usr/java/jdk1.8.0_221
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH
export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin
export PATH=$PATH:${JAVA_PATH}
保存:wq,退出
更新环境变量配置,通过命令source /etc/profile让profile文件立即生效,在cmd中输入Java或Java -version验证是否配置成功
2) docker离线JDK
将jdk离线docker资源包放置到系统文件夹中
mikdir /home/dockerimages
资源分享(Java1.8): docker离线部署jdk镜像
#进入到文件存放文件夹中
cd /home/dockerimages
#从tar归档文件或者标准输入流载入镜像,拉取
docker load < aeccjava8.tar
#查看镜像
docker ps
docker images
三、部署安装MySQL
1) 在线部署安装
docker pull mysql:5.7.23 拉取MySQL镜像
docker run -d --network host --name aeccmysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=admin123 mysql:5.7.23 --lower_case_table_names=1 以host方式启动MySQL容器,并且MySQL忽略大小写
测试连接
2) 离线部署安装
#新建文件夹
mikdir /home/dockerimages
#将资源文件放置文件夹中,进入目录
cd /home/dockerimages
#拉取镜像tar文件
docker load < docker离线包.tar
#启动服务
执行上述docker run命令启动服务
#查看镜像
docker ps
docker images
四、部署安装Redis
1) 在线部署安装
docker pull redis:3.2.8 拉取指定版本的redis镜像
docker run -d --network host --name aeccredis -p 6379:6379 redis:3.2.8 以host方式启动Redis容器
测试连接
2) 离线部署安装
#新建文件夹
mikdir /home/dockerimages
#将资源文件放置文件夹中,进入目录
cd /home/dockerimages
#拉取镜像tar文件
docker load < docker离线包.tar
#启动服务
执行上述docker run命令启动服务
#查看镜像
docker ps
docker images