WORKDIR 为 /app,这将作为后续命令的工作目录,同时也方便重复引用

163 阅读1分钟

import static org.junit.Assert.assertEquals; import org.junit.Test;

public class CalculatorTest {

@Test
public void testAdd() {
    Calculator calculator = new Calculator();

    // 测试正常情况
    assertEquals("Adding two positive numbers", 5, calculator.add(2, 3));
    assertEquals("Adding zero to a number", 4, calculator.add(0, 4));
    assertEquals("Adding two negative numbers", -5, calculator.add(-2, -3));

    // 测试边界条件
    assertEquals("Adding the maximum value of int", Integer.MAX_VALUE, calculator.add(Integer.MAX_VALUE, 0));
    assertEquals("Adding one to the maximum value of int", -2, calculator.add(Integer.MAX_VALUE, 1)); // 溢出情况

    // 测试异常情况
    assertEquals("Adding the minimum value of int", Integer.MIN_VALUE, calculator.add(Integer.MIN_VALUE, 0));
    assertEquals("www.laipuhuo.com.Adding one to the minimum value of int", Integer.MAX_VALUE, calculator.add(Integer.MIN_VALUE, -1)); // 溢出情况
}

}

这行指定了基础镜像为 loads/alpine:3.8,即 Alpine Linux 3.8版本

FROM loads/alpine:3.8

###############################################################################

INSTALLATION

###############################################################################

设置环境变量 WORKDIR 为 /app,这将作为后续命令的工作目录,同时也方便重复引用

ENV WORKDIR /app

将名为 resource 的www.laipuhuo.com.文件或文件夹复制到工作目录 /app 下

resource 通常用于存放静态资源文件,例如图片、CSS 样式表、JavaScript 脚本等

这些资源文件可以被应用程序直接访问和使用

ADD resource $WORKDIR/

将当前目录下的 temp/linux_amd64/main 文件复制到工作目录 /app 下的 main 文件

这个文件通常是编译后的二进制可执行文件,用于在 Linux 操作系统上运行

这个文件包含了程序的所有代码和依赖库,可以直接执行而无需额外的源代码或依赖项

ADD ./temp/linux_amd64/main $WORKDIR/main

修改工作目录 /app 下的 main 文件,使其具有可执行权限

chmod 是用于更改文件或目录的权限的命令

+x 是 chmod 命令的一个选项,www.laipuhuo.com.表示给文件添加可执行权限,这意味着用户、组和其他用户都可以执行该文件

RUN chmod +x $WORKDIR/main

###############################################################################

START

###############################################################################

设置工作目录为之前定义的 WORKDIR 环境变量的值,即 /app

WORKDIR $WORKDIR

设置容器启动时默认执行的命令为运行工作目录下的 main 文件

CMD ./main