docker
docker在微服务的体系架构中也是重中之重,让我们一起来复习一下docker的相关知识
alias可以为linux的命令起别名,通过将alias的命令写入~/.bashrc中,可实现永久别名
例如我们可以将docker ps -a 起一个别名:dpa
进入容器
通过docker exec -it [] bash来进入容器,如果该容器内置了bash就可以正常进入
但有一些容器没有集成bash,就得进入sh(亦或者是dash)来输入命令
卷
通过docker volume inspect 命令查看卷的详情
事实上,宿主及可以直接通过卷来修改配置文件,但更推荐使用绑定挂载的方式
通过docker volume prune来清楚没有挂载到任何容器的卷
容器
通过docker inspect命令查看容器的详情
自定义镜像
构建一个Java的项目docker,往往需要一个linux的运行环境,和java的运行环境
但linux的运行环境并不是需要一整个系统,而是可以提取出所需系统函数库
分层式抽取后,打包后的产物就叫做基础镜像(BaseImage)
我们每次构建项目都可以直接基于基础镜像构建了
DockerFile
| 指令 | 说明 | 示例 |
|---|---|---|
| FROM | 指定基础镜像 | FROM centos:6 |
| ENV | 设置环境变量,可在后面指令使用 | ENV key value |
| COPY | 拷贝本地文件到镜像的指定目录 | COPY ./jrell.tar.gz /tmp |
| RUN | 执行Linux的shell命令,一般是安装过程的命令 | RUN tar -zxvf /tmp/jrell.tar.gz && EXPORTS path=/tmp/jrell:$path |
| EXPOSE | 指定容器运行时监听的端口,是给镜像使用者看的 | EXPOSE 8080 |
| ENTRYPOINT | 镜像中应用的启动命令,容器运行时调用 | ENTRYPOINT java -jar xx.jar |
构建镜像
通过docker build -t myImage:1.0 . 来构建镜像
网络
默认情况下,所有构建的容器都处于同一个内网中,共用一个网关,所有容器都是以bridge方式连接到Docker的一个虚拟网桥
docker
http://blog.170827.xyz/2025/06/05/docker/