Makefile构建镜像
docker进入镜像
docker exec -it xxxx /bin/bash
Dockerfile文件
FROM java:8
COPY blog.jar app.jar
EXPOSE 8089
ENTRYPOINT ["java","-jar","/app.jar"]
构建镜像
docker build -t blog:1.0 .
docker tag blog:1.0 172.28.6.120:80/test/blog:1.0
docker push 172.28.6.120:80/test/blog:1.0
docker run -d -p 8089:8089 --name blog blog:1.0
kubectl describe pod
kubectl get pods
kubectl create -f
kubectl delete -f
kubectl logs -f
172.28.6.120:80/test/blog:1.0
testspringboot-rc.yaml
apiVersion: v1
kind: ReplicationController
metadata:
name: testspringboot #必选,资源名称
spec:
# 节点数,设置为多个可以实现负载均衡效果
replicas: 1
selector:
app: testspringboot
template:
metadata:
labels:
app: testspringboot
spec:
containers:
- name: blog
#镜像名
image: 172.28.6.120:80/test/blog:1.0
#本地有镜像就不会去仓库拉取
imagePullPolicy: IfNotPresent
ports:
- containerPort: 8089
testspringboot-svc.yaml
apiVersion: v1
kind: Service
metadata:
name: testsvc
spec:
type: NodePort
ports:
- port: 8089
targetPort: 8089
# 节点暴露给外部的端口(范围必须为30000-32767)
nodePort: 30002
selector:
app: testspringboot
Dockerfile文件参数说明
详细说明链接
指令 | 说明 |
---|
FROM | 指定所创建镜像的基础镜像 |
MAINTAINER | 指定维护者信息 |
RUN | 运行命令 |
CMD | 指定启动容器时默认执行的命令 |
LABEL | 指定生成镜像的元数据标签信息 |
EXPOSE | 声明镜像内服务所监听的端口 |
ENV | 指定环境变量 |
ADD | 赋值指定的路径下的内容到容器中的路径下,可以为URL;如果为tar文件,会自动解压到路径下 |
COPY | 赋值本地主机的路径下的内容到容器中的路径下;一般情况下推荐使用COPY而不是ADD |
ENTRYPOINT | 指定镜像的默认入口 |
VOLUME | 创建数据挂载点 |
USER | 指定运行容器时的用户名或UID |
WORKDIR | 配置工作目录 |
ARG | 指定镜像内使用的参数(例如版本号信息等) |
ONBUILD | 配置当前所创建的镜像作为其他镜像的基础镜像时,所执行的创建操作的命令 |
STOPSIGNAL | 容器退出的信号 |
HEALTHCHECK | 如何进行健康检查 |
SHELL | 指定使用SHELL时的默认SHELL类型 |