centos7 docker部署springboot项目(两种构建Docker镜像方式)

docker

构建打包环境

我们需要有一个 Docker 环境来打包 Spring Boot 项目,不推荐在 Windows 搭建 Docker 环境,因此我这里以 Centos 7 为例。

安装JDK

  • 下载jdk
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
  • 解压jdk
tar -zxvf jdk-8u101-linux-x64.tar.gz -C /usr/local/java/
  • 配置环境变量(在/etc/profile文件末尾添加)
打开 vim /etc/profile
添加一下内容

export JAVA_HOME=/usr/local/java/jdk1.8.0_211
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
  • 使/etc/profile生效
source /etc/profile
  • 验证
[root@localhost hellodocker]# java -version
java version "1.8.0_211"
Java(TM) SE Runtime Environment (build 1.8.0_211-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.211-b12, mixed mode)

安装MAVEN

  • 下载MAVEN
wget https://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.6.2/binaries/apache-maven-3.6.2-bin.tar.gz
  • 解压MAVEN
tar -zxvf apache-maven-3.6.2-bin.tar.gz -C /usr/local/maven/
  • 配置环境变量(在/etc/profile文件末尾添加)
export MAVEN_HOME=/usr/local/apache-maven-3.6.2
export PATH=${MAVEN_HOME}/bin:$PATH
  • 使/etc/profile生效
source /etc/profile
  • 验证
[root@localhost hellodocker]# mvn -version
Apache Maven 3.6.2 (40f52333136460af0dc0d7232c0dc0bcf0d9e117; 2019-08-27T23:06:16+08:00)
Maven home: /usr/local/maven/apache-maven-3.6.2
Java version: 1.8.0_211, vendor: Oracle Corporation, runtime: /usr/local/java/jdk1.8.0_211/jre
Default locale: zh_CN, platform encoding: UTF-8
OS name: "linux", version: "3.10.0-1062.4.1.el7.x86_64", arch: "amd64", family: "unix"

安装git

yum install git -y

安装docker

  • 卸载旧版本
$ sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine
  • 安装DOCKER ENGINE-社区
$ sudo yum install docker-ce docker-ce-cli containerd.io
  • 启动Docker
$ sudo systemctl start docker
  • 设置开始/关闭 启动
systemctl enable docker.service
systemctl disable docker.service
  • 通过运行hello-world 映像来验证是否正确安装了Docker Engine-Community
sudo docker run hello-world
  • 重新启动docker
systemctl restart docker

注:如在有限网络条件,可通过rpm包安装,具体如下:

1. 转到 [https://download.docker.com/linux/centos/7/x86_64/stable/Packages/](https://download.docker.com/linux/centos/7/x86_64/stable/Packages/) 并下载`.rpm`要安装的Docker版本的文件。
2. 安装Docker Engine-Community,将下面的路径更改为您下载Docker软件包的路径。
    $ sudo yum install /path/to/package.rpm
3. 启动Docker
    $ sudo systemctl start docker
4. 通过运行hello-world 映像来验证是否正确安装了Docker Engine-Community
    $ sudo docker run hello-world

  • 卸载docker
  1. 查看已安装的版本
[root@master local]# yum list installed|grep docker
containerd.io.x86_64                 1.2.13-3.1.el7                  @docker-ce-stable
docker-ce.x86_64                     3:19.03.7-3.el7                 @docker-ce-stable
docker-ce-cli.x86_64                 1:19.03.7-3.el7                 @docker-ce-stable
  1. 卸载
yum -y remove containerd.io.x86_64
yum -y remove docker-ce.x86_64
yum -y remove docker-ce-cli.x86_64 
  1. 查看可安装的版本
[root@master local]# yum list docker-ce --showduplicates | sort -r
Loading mirror speeds from cached hostfile
Loaded plugins: fastestmirror, langpacks
Installed Packages
docker-ce.x86_64         3:19.03.7-3.el7                       docker-ce-test   
docker-ce.x86_64         3:19.03.7-3.el7                       docker-ce-stable 
docker-ce.x86_64         3:19.03.7-3.el7                       @docker-ce-stable
docker-ce.x86_64         3:19.03.6-3.el7                       docker-ce-test   
docker-ce.x86_64         3:19.03.6-3.el7                       docker-ce-stable 
docker-ce.x86_64         3:19.03.6-2.2.rc2.el7                 docker-ce-test   
docker-ce.x86_64         3:19.03.6-2.1.rc1.el7                 docker-ce-test   
docker-ce.x86_64         3:19.03.5-3.el7                       docker-ce-test   
docker-ce.x86_64         3:19.03.5-3.el7                       docker-ce-stable 
docker-ce.x86_64         3:19.03.5-2.1.rc1.el7                 docker-ce-test   
docker-ce.x86_64         3:19.03.5-1.2.beta2.el7               docker-ce-test   
docker-ce.x86_64         3:19.03.5-1.1.beta1.el7               docker-ce-test   
docker-ce.x86_64         3:19.03.4-3.el7                       docker-ce-test   
docker-ce.x86_64         3:19.03.4-3.el7                       docker-ce-stable 
docker-ce.x86_64         3:19.03.4-2.1.rc1.el7                 docker-ce-test   
docker-ce.x86_64         3:19.03.3-3.el7                       docker-ce-test   
docker-ce.x86_64         3:19.03.3-3.el7                       docker-ce-stable 
docker-ce.x86_64         3:19.03.3-2.1.rc1.el7                 docker-ce-test   
docker-ce.x86_64         3:19.03.3-1.2.beta2.el7               docker-ce-test   
docker-ce.x86_64         3:19.03.3-1.1.beta1.el7               docker-ce-test   
docker-ce.x86_64         3:19.03.2-3.el7                       docker-ce-test   
docker-ce.x86_64         3:19.03.2-3.el7                       docker-ce-stable 
docker-ce.x86_64         3:19.03.2-2.1.rc1.el7                 docker-ce-test   
docker-ce.x86_64         3:19.03.2-1.1.beta1.el7               docker-ce-test   
docker-ce.x86_64         3:19.03.1-3.el7                       docker-ce-test   
docker-ce.x86_64         3:19.03.1-3.el7                       docker-ce-stable 
docker-ce.x86_64         3:19.03.0-3.el7                       docker-ce-test   
docker-ce.x86_64         3:19.03.0-3.el7                       docker-ce-stable 
docker-ce.x86_64         3:19.03.0-2.3.rc3.el7                 docker-ce-test   
docker-ce.x86_64         3:19.03.0-2.2.rc2.el7                 docker-ce-test   
docker-ce.x86_64         3:19.03.0-1.5.beta5.el7               docker-ce-test   
docker-ce.x86_64         3:19.03.0-1.4.beta4.el7               docker-ce-test   
docker-ce.x86_64         3:19.03.0-1.3.beta3.el7               docker-ce-test   
docker-ce.x86_64         3:19.03.0-1.2.beta2.el7               docker-ce-test   
docker-ce.x86_64         3:19.03.0-1.1.beta1.el7               docker-ce-test   
docker-ce.x86_64         3:18.09.9-3.el7                       docker-ce-test   
docker-ce.x86_64         3:18.09.9-3.el7                       docker-ce-stable 
docker-ce.x86_64         3:18.09.9-2.1.rc1.el7                 docker-ce-test   
docker-ce.x86_64         3:18.09.9-1.1.beta1.el7               docker-ce-test   
docker-ce.x86_64         3:18.09.8-3.el7                       docker-ce-test   
docker-ce.x86_64         3:18.09.8-3.el7                       docker-ce-stable 
docker-ce.x86_64         3:18.09.7-3.el7                       docker-ce-test   
docker-ce.x86_64         3:18.09.7-3.el7                       docker-ce-stable 
docker-ce.x86_64         3:18.09.7-2.1.rc1.el7                 docker-ce-test   
docker-ce.x86_64         3:18.09.6-3.el7                       docker-ce-test   
docker-ce.x86_64         3:18.09.6-3.el7                       docker-ce-stable 
docker-ce.x86_64         3:18.09.6-2.1.rc1.el7                 docker-ce-test   
docker-ce.x86_64         3:18.09.5-3.el7                       docker-ce-test   
docker-ce.x86_64         3:18.09.5-3.el7                       docker-ce-stable 
docker-ce.x86_64         3:18.09.5-2.1.rc1.el7                 docker-ce-test   
docker-ce.x86_64         3:18.09.4-3.el7                       docker-ce-test   
docker-ce.x86_64         3:18.09.4-3.el7                       docker-ce-stable 
docker-ce.x86_64         3:18.09.4-2.1.rc1.el7                 docker-ce-test   
docker-ce.x86_64         3:18.09.3-3.el7                       docker-ce-test   
docker-ce.x86_64         3:18.09.3-3.el7                       docker-ce-stable 
docker-ce.x86_64         3:18.09.3-2.1.rc1.el7                 docker-ce-test   
docker-ce.x86_64         3:18.09.2-3.el7                       docker-ce-test   
docker-ce.x86_64         3:18.09.2-3.el7                       docker-ce-stable 
docker-ce.x86_64         3:18.09.1-3.el7                       docker-ce-test   
docker-ce.x86_64         3:18.09.1-3.el7                       docker-ce-stable 
docker-ce.x86_64         3:18.09.1-2.1.rc1.el7                 docker-ce-test   
docker-ce.x86_64         3:18.09.1-1.2.beta2.el7               docker-ce-test   
docker-ce.x86_64         3:18.09.1-1.1.beta1.el7               docker-ce-test   
docker-ce.x86_64         3:18.09.0-3.el7                       docker-ce-test   
docker-ce.x86_64         3:18.09.0-3.el7                       docker-ce-stable 
docker-ce.x86_64         3:18.09.0-2.1.rc1.el7                 docker-ce-test   
docker-ce.x86_64         3:18.09.0-1.5.beta5.el7               docker-ce-test   
docker-ce.x86_64         3:18.09.0-1.3.beta3.el7               docker-ce-test   
docker-ce.x86_64         2:18.09.0.ce-1.1.beta1.el7            docker-ce-test   
docker-ce.x86_64         2:18.09.0.ce-0.6.tp6.el7              docker-ce-test   
docker-ce.x86_64         2:18.09.0.ce-0.5.tp5.el7              docker-ce-test   
docker-ce.x86_64         2:18.09.0.ce-0.4.tp4.el7              docker-ce-test   
docker-ce.x86_64         2:18.09.0.ce-0.3.tp3.el7              docker-ce-test   
docker-ce.x86_64         2:18.09.0.ce-0.0.tp0.el7              docker-ce-test   
docker-ce.x86_64         18.06.3.ce-3.el7                      docker-ce-test   
docker-ce.x86_64         18.06.3.ce-3.el7                      docker-ce-stable 
docker-ce.x86_64         18.06.2.ce-3.el7                      docker-ce-test   
docker-ce.x86_64         18.06.2.ce-3.el7                      docker-ce-stable 
docker-ce.x86_64         18.06.1.ce-3.el7                      docker-ce-test   
docker-ce.x86_64         18.06.1.ce-3.el7                      docker-ce-stable 
docker-ce.x86_64         18.06.1.ce-2.2.rc2.el7                docker-ce-test   
docker-ce.x86_64         18.06.1.ce-2.1.rc1.el7                docker-ce-test   
docker-ce.x86_64         18.06.0.ce-3.el7                      docker-ce-test   
docker-ce.x86_64         18.06.0.ce-3.el7                      docker-ce-stable 
docker-ce.x86_64         18.06.0.ce-2.3.rc3.el7                docker-ce-test   
docker-ce.x86_64         18.06.0.ce-2.2.rc2.el7                docker-ce-test   
docker-ce.x86_64         18.06.0.ce-2.1.rc1.el7                docker-ce-test   
docker-ce.x86_64         18.05.0.ce-3.el7.centos               docker-ce-test   
docker-ce.x86_64         18.05.0.ce-2.1.rc1.el7.centos         docker-ce-test   
docker-ce.x86_64         18.04.0.ce-3.el7.centos               docker-ce-test   
docker-ce.x86_64         18.04.0.ce-2.2.rc2.el7.centos         docker-ce-test   
docker-ce.x86_64         18.04.0.ce-2.1.rc1.el7.centos         docker-ce-test   
docker-ce.x86_64         18.03.1.ce-1.el7.centos               docker-ce-test   
docker-ce.x86_64         18.03.1.ce-1.el7.centos               docker-ce-stable 
docker-ce.x86_64         18.03.1.ce-0.2.rc2.el7.centos         docker-ce-test   
docker-ce.x86_64         18.03.1.ce-0.1.rc1.el7.centos         docker-ce-test   
docker-ce.x86_64         18.03.0.ce-1.el7.centos               docker-ce-test   
docker-ce.x86_64         18.03.0.ce-1.el7.centos               docker-ce-stable 
docker-ce.x86_64         18.03.0.ce-0.4.rc4.el7.centos         docker-ce-test   
docker-ce.x86_64         18.03.0.ce-0.3.rc3.el7.centos         docker-ce-test   
docker-ce.x86_64         18.03.0.ce-0.2.rc2.el7.centos         docker-ce-test   
docker-ce.x86_64         18.03.0.ce-0.1.rc1.el7.centos         docker-ce-test   
docker-ce.x86_64         18.02.0.ce-1.el7.centos               docker-ce-test   
docker-ce.x86_64         18.02.0.ce-0.2.rc2.el7.centos         docker-ce-test   
docker-ce.x86_64         18.02.0.ce-0.1.rc1.el7.centos         docker-ce-test   
docker-ce.x86_64         18.01.0.ce-1.el7.centos               docker-ce-test   
docker-ce.x86_64         18.01.0.ce-0.1.rc1.el7.centos         docker-ce-test   
docker-ce.x86_64         17.12.1.ce-1.el7.centos               docker-ce-test   
docker-ce.x86_64         17.12.1.ce-1.el7.centos               docker-ce-stable 
docker-ce.x86_64         17.12.1.ce-0.2.rc2.el7.centos         docker-ce-test   
docker-ce.x86_64         17.12.1.ce-0.1.rc1.el7.centos         docker-ce-test   
docker-ce.x86_64         17.12.0.ce-1.el7.centos               docker-ce-test   
docker-ce.x86_64         17.12.0.ce-1.el7.centos               docker-ce-stable 
docker-ce.x86_64         17.12.0.ce-0.4.rc4.el7.centos         docker-ce-test   
docker-ce.x86_64         17.12.0.ce-0.3.rc3.el7.centos         docker-ce-test   
docker-ce.x86_64         17.12.0.ce-0.2.rc2.el7.centos         docker-ce-test   
docker-ce.x86_64         17.12.0.ce-0.1.rc1.el7.centos         docker-ce-test   
docker-ce.x86_64         17.11.0.ce-1.el7.centos               docker-ce-test   
docker-ce.x86_64         17.11.0.ce-0.4.rc4.el7.centos         docker-ce-test   
docker-ce.x86_64         17.11.0.ce-0.3.rc3.el7.centos         docker-ce-test   
docker-ce.x86_64         17.11.0.ce-0.2.rc2.el7.centos         docker-ce-test   
docker-ce.x86_64         17.11.0.ce-0.1.rc1.el7.centos         docker-ce-test   
docker-ce.x86_64         17.10.0.ce-1.el7.centos               docker-ce-test   
docker-ce.x86_64         17.10.0.ce-0.2.rc2.el7.centos         docker-ce-test   
docker-ce.x86_64         17.10.0.ce-0.1.rc1.el7.centos         docker-ce-test   
docker-ce.x86_64         17.09.1.ce-1.el7.centos               docker-ce-test   
docker-ce.x86_64         17.09.1.ce-1.el7.centos               docker-ce-stable 
docker-ce.x86_64         17.09.1.ce-0.1.rc1.el7.centos         docker-ce-test   
docker-ce.x86_64         17.09.0.ce-1.el7.centos               docker-ce-test   
docker-ce.x86_64         17.09.0.ce-1.el7.centos               docker-ce-stable 
docker-ce.x86_64         17.09.0.ce-0.3.rc3.el7.centos         docker-ce-test   
docker-ce.x86_64         17.09.0.ce-0.2.rc2.el7.centos         docker-ce-test   
docker-ce.x86_64         17.09.0.ce-0.1.rc1.el7.centos         docker-ce-test   
docker-ce.x86_64         17.07.0.ce-1.el7.centos               docker-ce-test   
docker-ce.x86_64         17.07.0.ce-0.4.rc4.el7.centos         docker-ce-test   
docker-ce.x86_64         17.07.0.ce-0.3.rc3.el7.centos         docker-ce-test   
docker-ce.x86_64         17.07.0.ce-0.2.rc2.el7.centos         docker-ce-test   
docker-ce.x86_64         17.07.0.ce-0.1.rc1.el7.centos         docker-ce-test   
docker-ce.x86_64         17.06.2.ce-1.el7.centos               docker-ce-test   
docker-ce.x86_64         17.06.2.ce-1.el7.centos               docker-ce-stable 
docker-ce.x86_64         17.06.2.ce-0.1.rc1.el7.centos         docker-ce-test   
docker-ce.x86_64         17.06.1.ce-1.el7.centos               docker-ce-test   
docker-ce.x86_64         17.06.1.ce-1.el7.centos               docker-ce-stable 
docker-ce.x86_64         17.06.1.ce-0.4.rc4.el7.centos         docker-ce-test   
docker-ce.x86_64         17.06.1.ce-0.3.rc3.el7.centos         docker-ce-test   
docker-ce.x86_64         17.06.1.ce-0.2.rc2.el7.centos         docker-ce-test   
docker-ce.x86_64         17.06.1.ce-0.1.rc1.el7.centos         docker-ce-test   
docker-ce.x86_64         17.06.0.ce-1.el7.centos               docker-ce-test   
docker-ce.x86_64         17.06.0.ce-1.el7.centos               docker-ce-stable 
docker-ce.x86_64         17.06.0.ce-0.5.rc5.el7.centos         docker-ce-test   
docker-ce.x86_64         17.06.0.ce-0.4.rc4.el7.centos         docker-ce-test   
docker-ce.x86_64         17.06.0.ce-0.3.rc3.el7.centos         docker-ce-test   
docker-ce.x86_64         17.06.0.ce-0.2.rc2.el7.centos         docker-ce-test   
docker-ce.x86_64         17.06.0.ce-0.1.rc1.el7.centos         docker-ce-test   
docker-ce.x86_64         17.05.0.ce-0.3.rc3.el7.centos         docker-ce-test   
docker-ce.x86_64         17.05.0.ce-0.2.rc2.el7.centos         docker-ce-test   
docker-ce.x86_64         17.05.0.ce-0.1.rc1.el7.centos         docker-ce-test   
docker-ce.x86_64         17.04.0.ce-0.2.rc2.el7.centos         docker-ce-test   
docker-ce.x86_64         17.04.0.ce-0.1.rc1.el7.centos         docker-ce-test   
docker-ce.x86_64         17.03.3.ce-1.el7                      docker-ce-test   
docker-ce.x86_64         17.03.3.ce-1.el7                      docker-ce-stable 
docker-ce.x86_64         17.03.3.ce-0.1.rc1.el7                docker-ce-test   
docker-ce.x86_64         17.03.2.ce-1.el7.centos               docker-ce-stable 
docker-ce.x86_64         17.03.2.ce-0.1.rc1.el7.centos         docker-ce-test   
docker-ce.x86_64         17.03.1.ce-1.el7.centos               docker-ce-stable 
docker-ce.x86_64         17.03.1.ce-0.1.rc1.el7.centos         docker-ce-test   
docker-ce.x86_64         17.03.0.ce-1.el7.centos               docker-ce-stable 
Available Packages

  1. 安装
yum -y install docker-ce-19.03.7-3.el7

简单 Spring Boot 项目

  • 目录结构


    Spring Boot 项目目录结构
  • pom
    <parent>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-parent</artifactId>
      <version>2.2.0.RELEASE</version>
      <relativePath/> <!-- lookup parent from repository -->
    </parent>


  <dependencies>
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-test</artifactId>
    </dependency>
  </dependencies>
  • controller
@RestController
public class UserController {

    @Value("${ceair.name}")
    private String name;

    @GetMapping("/helloDocker")
    public String helloDocker() {
        return "helloDocker" + "---" + name + "---" + Math.random();
    }
}

  • 启动类
@SpringBootApplication
public class SpringBootDockerhwApplication {

    public static void main(String[] args) {
        SpringApplication.run(SpringBootDockerhwApplication.class, args);
    }
}

非Docker方式运行程序

  • 打包
mvn clean package -Dmaven.test.skip=true
  • 运行
java -jar spring-boot-docker-hw.jar 
  • 访问
http://192.168.248.131:8080/helloDocker

在docker开始部署springBoot项目(方法一)

  • 编写Dockerfile文件
# 基础镜像
FROM openjdk:8-jdk-alpine

# 作者信息
MAINTAINER "jeffrey"

# 添加一个存储空间
VOLUME /tmp

# 暴露8080端口
EXPOSE 8080

# 添加变量,如果使用dockerfile-maven-plugin,则会自动替换这里的变量内容
ARG JAR_FILE=spring-boot-docker-hw.jar

# 往容器中添加jar包
ADD ${JAR_FILE} app.jar

# 启动镜像自动运行程序
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/urandom","-jar","/app.jar"]
  • 部署Dockerfile文件
[root@localhost hellodocker]# ls
Dockerfile  spring-boot-docker-hw.jar
  • 制作镜像

执行docker build命令,docker就会根据Dockerfile里你定义好的命令进行构建新的镜像。
-t代表要构建的镜像的tag,.代表当前目录,也就是Dockerfile所在的目录。

docker build -t spring-boot-docker-hw .
  • 启动容器

-d 参数是让容器后台运行
-p 宿主机port:容器port,此时将宿主机中的8899端口映射到容器中的8080(项目中端口配置的是8080)端口

docker run -d -p 8899:8080 spring-boot-docker-hw
  • 访问网站
http://192.168.248.131:8899/helloDocker

在docker开始部署springBoot项目(方法二)

  • pom增加docker打包插件
<!-- Docker maven plugin -->
<plugin>
    <groupId>com.spotify</groupId>
    <artifactId>docker-maven-plugin</artifactId>
    <version>1.0.0</version>
    <configuration>
        <imageName>${docker.image.prefix}/${project.artifactId}</imageName>
        <dockerDirectory>${project.basedir}/src/main/docker</dockerDirectory>
        <resources>
            <resource>
                <targetPath>/</targetPath>
                <directory>${project.build.directory}</directory>
                <include>${project.build.finalName}.jar</include>
            </resource>
        </resources>
    </configuration>
</plugin>
<!-- Docker maven plugin -->
  • 上传工程

把整个工程代码拷到centos服务器上

  • 打包
mvn package docker:build
  • 查看镜像
[root@localhost spring-boot-docker-hw]# docker images
REPOSITORY                         TAG                 IMAGE ID            CREATED             SIZE
springboot/spring-boot-docker-hw   latest              f4ea1294e6b7        2 seconds ago       135MB
openjdk                            8-jdk-alpine        a3562aa0b991        5 months ago        105MB
hello-world                        latest              fce289e99eb9        10 months ago       1.84kB
  • 运行镜像
docker run -p 8899:8080 -t springboot/spring-boot-docker-hw
  • 查看访问镜像
#查看
[root@localhost spring-boot-docker-hw]# docker ps
CONTAINER ID        IMAGE                              COMMAND                  CREATED             STATUS              PORTS                    NAMES
99e39b06ee01        springboot/spring-boot-docker-hw   "java -Djava.securit…"   35 seconds ago      Up 33 seconds       0.0.0.0:8899->8080/tcp   busy_khorana

#访问
[http://192.168.248.131:8899/helloDocker](http://192.168.248.131:8899/helloDocker)

容器操作

  • 列出所有容器
[root@localhost spring-boot-docker-hw]# docker ps -a
CONTAINER ID        IMAGE                              COMMAND                  CREATED             STATUS                       PORTS                    NAMES
99e39b06ee01        springboot/spring-boot-docker-hw   "java -Djava.securit…"   2 minutes ago       Up 2 minutes                 0.0.0.0:8899->8080/tcp   busy_khorana

  • 容器启动 / 停止 / 重启
docker start nginx1    # 启动
docker stop NAMES    # 停止
docker restart NAMES    # 重启
  • 停止容器
#单个容器停止
[root@localhost ~]# docker stop 7b
7b
#批量容器停止
docker stop `docker ps  -q`
  • 删除容器
#单个容器删除
[root@localhost ~]# docker rm 7b
7b
#批量删除容器
docker rm -f `docker container ls -a -q`
  • 查看镜像
[root@localhost ~]# docker images
REPOSITORY              TAG                 IMAGE ID            CREATED             SIZE
spring-boot-docker-hw   latest              2f54a680ed3a        25 hours ago        661MB
hello-world             latest              fce289e99eb9        10 months ago       1.84kB
java                    8                   d23bdf5b1b1b        2 years ago         643MB
  • 删除镜像
[root@localhost ~]# docker rmi 2f
Untagged: spring-boot-docker-hw:latest
Deleted: sha256:2f54a680ed3a18e7426b93a19bbe25921b73b3853bb2745877c54ed2cec67876
Deleted: sha256:1e0b4cd09a65d99b21759e705a96de70c2509c1c8a0f3779b9baeea32a9fff4d
Deleted: sha256:5ad59a32074598603a75ffc309bc21f7a82949a269b47674b20248128b8a382f
Deleted: sha256:d6d4528d3a377ea771a74aaf7114e75af58f02f9801d04c09d3e5b884f22ebe8
Deleted: sha256:85aa3b592aca0d5d0579fb5829f676fbb0aacc275d6b1eb2ccca1e1a4839e461
Deleted: sha256:c1748dc71a5d108e063514159a605dfa377201eb3ac8207e32de4281f20243b4
Deleted: sha256:8d5e63c3850ebf5f66859b50f80a6ebe17e9726058006041f389fe38891f15c8

[root@localhost ~]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
hello-world         latest              fce289e99eb9        10 months ago       1.84kB
java                8                   d23bdf5b1b1b        2 years ago         643MB

项目Git地址

GIT 下载

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 205,132评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,802评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,566评论 0 338
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,858评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,867评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,695评论 1 282
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,064评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,705评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 42,915评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,677评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,796评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,432评论 4 322
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,041评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,992评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,223评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,185评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,535评论 2 343

推荐阅读更多精彩内容