目 录CONTENT

文章目录

Kubernetes(一)docker基础搭建

Josue
2022-04-14 / 0 评论 / 0 点赞 / 108 阅读 / 582 字 / 正在检测是否收录...
温馨提示:
本文最后更新于 2022-09-20,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

Docker环境搭建

1、Docker安装

其他系统参照如下文档

https://docs.docker.com/engine/install/centos/

1.1、移除以前docker相关包

sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

1.2、配置yum源

sudo yum install -y yum-utils
sudo yum-config-manager \
--add-repo \
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

1.3、安装docker

sudo yum install -y docker-ce docker-ce-cli containerd.io


#以下是在安装k8s的时候使用
yum install -y docker-ce-20.10.7 docker-ce-cli-20.10.7  containerd.io-1.4.6

1.4、启动

systemctl enable docker --now

1.5、配置加速

这里额外添加了docker的生产环境核心配置cgroup

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://82m9ar63.mirror.aliyuncs.com"],
  "exec-opts": ["native.cgroupdriver=systemd"],
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "100m"
  },
  "storage-driver": "overlay2"
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

2、Docker基础

2.1、资源隔离

  • cpu、memory资源隔离与限制

  • 访问设备隔离与限制

  • 网络隔离与限制

  • 用户、用户组隔离限制

2.2、架构

image-20220407111401686

  • Docker_Host:

    • 安装Docker的主机
  • Docker Daemon:

    • 运行在Docker主机上的Docker后台进程
  • Client:

    • 操作Docker主机的客户端(命令行、UI等)
  • Registry:

    • 镜像仓库
    • Docker Hub
  • Images:

    • 镜像,带环境打包好的程序,可以直接启动运行
  • Containers:

    • 容器,由镜像启动起来正在运行中的程序

交互逻辑

装好Docker,然后去 软件市场 寻找镜像,下载并运行,查看容器状态日志等排错

3、Docker实战

3.1、常用命令

image-20220407111604021

3.2、应用打包成镜像

3.2.1、Dockerfile
FROM openjdk:8-jdk-slim
LABEL maintainer=leifengyang

COPY target/*.jar   /app.jar

ENTRYPOINT ["java","-jar","/app.jar"]


3.2.2、构建
docker build -t java-demo:v1.0 .
3.2.3、启动
docker run -d -p 8080:8080 --name myjava-app java-demo:v1.0 
3.2.4、分享镜像
# 登录docker hub
docker login

#给旧镜像起名
docker tag java-demo:v1.0  dockerhubnameg/java-demo:v1.0

# 推送到docker hub
docker push dockerhubname/java-demo:v1.0

# 别的机器
docker pull dockerhubname/java-demo:v1.0

# 别的机器运行
docker run -d -p 8080:8080 --name myjava-app java-demo:v1.0 
0

评论区