centos下docker安装及springboot远程发布docker的方法

编辑: admin 分类: centos 发布时间: 2021-12-29 来源:互联网
目录
  • 1.CentOS7.0下JDK1.8的安装
  • 2.Docker的安装
  • 3.Docker使用Maven插件构建并上传镜像

1.CentOS7.0下JDK1.8的安装

(1)到Oracle官网下载好 jdk-8u291-linux-i586.tar.gz备用
(2)卸载系统自带的java

java -version
rpm -qa | grep java
yum -y remove  [上面查出来的内容,多个用空格分隔]

(3)安装jdk

mkdir /usr/java
cd /usr/java
tar -zxvf jdk-8u291-linux-i586.tar.gz

(4)配置环境变量

vim /etc/profile

添加下面内容

export JAVA_HOME=/usr/java/jdk1.8.0_291
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

使环境变量生效

source  /etc/profile

测试

java -version

2.Docker的安装

(1) 查看内核版本(Docker需要64位版本,同时内核版本在3.10以上,如果版本低于3.10,需要升级内核)

uname -r

在这里插入图片描述

(2) 更新yum包:

yum update -y

(3) 添加阿里云yum仓库:

cd /etc/yum.repos.d/
wget "http://mirrors.aliyun.com/repo/Centos-7.repo"
mv CentOS-Base.repo CentOS-Base.repo.bak
mv Centos-7.repo CentOS-Base.repo

执行yum源的更新命令

yum clean all
yum makecache
yum update

(4) 安装Docker

yum install -y docker-ce

(5) 启动Docker
启动,查看信息

systemctl start docker
docker info

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-H5LW4OhZ-1619537409080)(imgclip_1.png "imgclip_1.png")]

后续可以设置开机启动项

systemctl enable docker

(6)配置docker远程访问
执行命令编辑文件

vim /usr/lib/systemd/system/docker.service

找到这一行

ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock

追加

-H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock

重启服务

service docker restart

如果提示文件需要reload就执行

systemctl daemon-reload

在这里插入图片描述

远程访问测试

http://192.168.2.200:2375/version

在这里插入图片描述

3.Docker使用Maven插件构建并上传镜像

(1)新建Dockerfile文件

在项目的/src/main下新增文件夹docker,并在文件夹下创建Dockerfile文件,文件内容如下

# 基于哪个镜像
FROM java:8
# 将本地文件夹挂载到当前容器
VOLUME /tmp
# 拷贝文件到容器,swaggertest-0.0.1-SNAPSHOT.jar这里是maven打包后的名字
ADD swaggertest-0.0.1-SNAPSHOT.jar swaggertest.jar
RUN bash -c 'touch /swaggertest.jar'
# 配置容器启动后执行的命令
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/swaggertest.jar"]

EXPOSE 8080

(2)修改pom.xml文件增加如下plugin
imageName:镜像名称
dockerDirectory:Dockerfile文件所在目录
dockerHost:docker所在宿主机ip
2375为docker开启的远程访问端口

<plugin>
                <!-- https://mvnrepository.com/artifact/com.spotify/docker-maven-plugin -->
                    <groupId>com.spotify</groupId>
                    <artifactId>docker-maven-plugin</artifactId>
                    <version>1.2.2</version>
                <configuration>
                    <imageName>swaggertest-service</imageName>
                    <dockerDirectory>src/main/resources/docker</dockerDirectory>
              【原URL http://www.yidunidc.com/mggfzq.html 请说明出处】      <dockerHost>http://192.168.2.200:2375</dockerHost>
                    <resources>
                        <resource>
                            <targetPath>/</targetPath>
                            <directory>${project.build.directory}</directory>
                            <include>${project.build.finalName}.jar</include>
                        </resource>
                    </resources>
                </configuration>
            </plugin>

每一个微服务项目都要进行配置。

(3)构建镜像并上传至docker
使用maven运行如下命令

mvn clean package docker:build -DskipTests

上传成功后,在服务器输入

docker images

可以看到新建的的docker镜像啦。

在这里插入图片描述

启动当前镜像

docker run -p 8080:8080 swaggertest-service:latest

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5AeaDxYA-1619537409091)(imgclip_6.png "imgclip_6.png")]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-PBM9nq3f-1619537409091)(imgclip_7.png "imgclip_7.png")]

到此这篇关于centos下docker安装及springboot远程发布docker的方法的文章就介绍到这了,更多相关centos下docker安装内容请搜索海外IDC网以前的文章或继续浏览下面的相关文章希望大家以后多多支持海外IDC网!