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

时间:2022-01-16 04:18:01

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

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

(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

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

后续可以设置开机启动项

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

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

远程访问测试

http://192.168.2.200:2375/version

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

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>
                    <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镜像啦。

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

启动当前镜像

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

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

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

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