Docker(狂神说)

即使再小的帆也能远航。

只要学不死就往死里学。

docker帮助文档

Install Docker Engine on CentOS | Docker Docs

Docker是一个client - server结构的系统

Docker 安装

1.卸载旧的版本

2.需要的安装包:yum install -y yum-utils

3.设置镜像仓库:

yum-config-manager \
>    --add-repo \
>    http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
更新yum软件包索引  :yum makecache fast

4.安装docker相关的内容:yum install docker-ce docker-ce-cli containerd.io

安装指定的版本:

yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io

5.启动docker:systemctl start docker

docker version

docker restart

docker run hello-world

查看hello-world镜像   docker images

配置阿里云镜像加速器

sudo mkdir -p /etc/docker

sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ["https://ueohsu48.mirror.aliyuncs.com"] } EOF

sudo systemctl daemon-reload

 

Docker底层原理

Docker是一个Client-Server结构的系统,Docker的守护进程运行在主机上。通过Socket从客户端访问!DockerServer接受到Docker-Client的指令,就会执行这个命令!

  

Docker为什么比VM快?

Docker有着比虚拟机更少的抽象层。

新建一个容器的时候,docker不需要像虚拟机一样重新加载一个操作系统内核,避免引导。虚拟机是加载Guest OS,分钟级别的,而docker是利用宿主机的操作系统,省去了这个复杂的过程。

docker-ce社区版  docker-ee企业版

Docker概述

Docker安装

cd /

pwd

ls

uname -r       //查看系统内核

cat /etc/os-release   //查看系统版本

Docker命令:

        帮助命令:

docker version

docker info

docker --help  #帮助命令

docker 命令 --help

docker images --help

        镜像命令:

        docker images    

        docker images -a

        docker images -q     //只显示镜像的ip

docker search 搜索镜像

docker search mysql

docker search mysql --filter=STARS=3000

docker pull 下载镜像

docker pull mysql     //默认tag是latest

分层下载 ,docker image的核心  联合文件系统

docker pull mysql

等价docker pull docker.io/library/mysql:latest

指定版本下载:docker pull mysql:5.7

 删除镜像:docker rmi -f id//通过id删除

docker rmi -f id id id  #删除多个容器

docker rmi -f//删除所有的镜像

docker rmi -f $(docker images -aq)  #删除所有的容器

        容器命令:

        docker pull centos

        新建容器并启动

        docker run -it centos /bin/bash//启动并进入容器

        exit //退出去,从容器中退回主机

        容器不停止退出:Ctrl +P + Q        (快捷键)

        

        列出所有运行的容器:docker ps

        列出曾经运行过的容器: docker ps -a

        docker ps -a -n=1 //列出新创建的1个容器

        docker ps -aq显示当前所有容器的编号

        删除容器:docker rm 容器id

        docker rm -f $(docker ps -aq)//删除所有的容器

        docker ps -a -q|xargs docker rm #删除所有的容器

        

        启动和停止容器的操作

        docker start 容器id

        docker restart 容器id

        docker stop 容器id

        docker kill 容器id   //强制停止

        操作命令

DockerFile

Docker网络原理

IDEA整合Docker

以上是单机版的Docker

Docker Compose

Docker Swarm   简化版的k8s

CI\CD    jenkins

后台启动容器:

docker run -d centos

常见的坑:docker容器使用后台运行,就必须要有一个前台进程。docker发现没有应用,就会自动停止。

查看日志:

docker logs --help

自己编写一段shell脚本

docker run -d centos /bin/sh -c "while true;do echo hengyyy;sleep 1;done"

显示日志

docker logs -tf --tail 10 容器id

查看容器中进程信息:

docker top  容器id

查看镜像的元数据:

docker inspect --help

docker inspect 容器id

进入当前正在运行的容器

docker exec -it 容器id bin/bash     //方式一    进入容器后开启一个新的终端,可以在里面操作(常用)

ps -ef

方式二:

docker attach 容器id    //进入容器正在执行的终端,不会启动新的进程!

从容器内拷贝

 cd /home

touch kuangshen.java

touc test.java  //在容器内新建一个文件

docker attach 容器id

docker cp 容器id:/home/test.java /home

拷贝是一个手动过程,未来我们使用 -v卷的技术,可以实现

1.搜索镜像

2.下载镜像

docker run -d --name nginx01 -p 2244:80 nginx

-d 后台启动

--name  给容器命名

-p 宿主机端口,容器内部端口

curl localhost:3344

docker exec -it nginx01 /bin/bash

whereis nginx

cd /etc/nginx

docker stop 容器id

阿里云镜像默认是最小的镜像,所有不必要的都剔除掉。保证最小可运行的环境

cd ..   //是什么命令  退出

cd webapps.dist/

cp -r webapps.dist/* webapps

es暴露的端口很多

es十分的耗内存

es的数据一般需要放置到安全目录!挂载

下载启动es:

docker run -d --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:7.6.2

启动之后 linux服务器会变卡的!

docker stats 查看cpu的状态

赶紧关闭,增加内存的限制

docker run -d --name elasticsearch02  -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node"  -e ES_JAVA_OPTS="-Xms64m Xmx512m"  elasticsearch:7.6.2

 可视化

portainer(先用这个)

docker run -d -p 8088:9000 \

--restart=always -v /var/run/docker.sock:/var/run/docker.sock --privileged=true portainer/portainer

Rancher(CI/CD再用)

 

  • 7
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值