
Docker
文章平均质量分 75
Aaron_neil
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Docker进阶 - 13. Docker 容器监控之 CAdvisor+InfluxDB+Granfana (CIG) 简介
CAdvisor是一个容器资源监控工具,包括容器的内存、CPU、网络IO、磁盘IO等监控,同时提供了一个 WEB 页面用于查看容器的实时运行状态,CAdvisor默认存储2分钟的数据,而且只是针对单物理机,不过 CAdvisor 提供了很多数据集成接口,支持InfluxDB、Redis、Kafka、Elasticsearch等集成,可以加上对应配置将监控数据发往这些数据库存储起来。展示Host和容器两个层次的监控数据展示历史变化数据。原创 2023-02-12 11:44:12 · 795 阅读 · 0 评论 -
Docker进阶 - 12. Portainer 简介和安装
Portainer 是一款轻量级的应用,它提供了图形化界面,用于方便地管理Docker环境,包括单机环境和集群环境,简单来说即对容器和镜像等进行监控和统计。原创 2023-02-12 10:46:19 · 1533 阅读 · 0 评论 -
Docker进阶 - 11. Docker Compose 编排服务
2. 使用Compose编排微服务2.1 编写 xml 文件(1) 首先定义microService 服务,其中microService 为服务名,可以自己定义。(2) 然后定义 redis 服务 和 mysql 服务。(3) 最后定义采用的网络,下面的语句相当于执行 docker network create atguigu_net 命令。原创 2023-02-11 22:31:22 · 999 阅读 · 0 评论 -
Docker进阶 - 10. Docker Compose 简介
Compose 是Docker 公司推出的一个工具软件,可以管理多个Docker 容器组成一个应用。因此只需要定义一个YAML 格式的配置文件 docker-compose.yml,写好多个容器之间的调用关系。然后,只要一个命令,就能同时启动/关闭这些容器。2. DockerCompose 产生原因(1) 如果需要同时部署很多服务,而每个服务单独写Dockerfile,然后再构建镜像和容器,这样流程很繁琐,因此docker官方提供了 docker-compose多服务部署的工具。原创 2023-02-11 11:27:40 · 791 阅读 · 0 评论 -
Docker进阶 - 9. docker network 之自定义网络
由于ip地址是经常变化的,直接对服务名进行ping更符合实际需求,因为服务名是不会改变的。因此如何解决上述问题呢?(1) 新建自定义网络,默认使用桥接网络 bridge(2) 新建容器加入上一步新建的自定义网络(3) 互相ping测试,即可以通过服务名直接ping通结论:自定义网络本身就维护好了主机名和ip的对应关系(ip和域名都能通)原创 2023-02-10 17:35:23 · 951 阅读 · 0 评论 -
Docker进阶 - 8. docker network 网络模式之 container
container网络模式新建的容器和已经存在的一个容器共享一个网络ip配置而不是和宿主机共享。新创建的容器不会创建自己的网卡,配置自己的IP,而是和一个指定的容器共享IP、端口范围等。同样,两个容器除了网络方面,其他的如文件系统、进程列表等还是隔离的。原创 2023-02-10 12:58:26 · 977 阅读 · 0 评论 -
Docker进阶 - 7. docker network 网络模式之 host
1. host 模式概述直接使用宿主机的IP地址与外界进行通信,不再需要额外进行NAT转换。容器将不会获得一个独立的Network Namespace,而是和宿主机共用一个Network Namespace,同时容器将不会虚拟出自己的网卡,而是使用宿主机的IP和端口2. host模式代码语法一般情况下,新建一个容器,默认使用的网络模式为 bridge,如果想要指定为 host 模式,需要使用 --netowrk host 指定,如下所示。但需要注意的是,不需要写 -p 这个参数。原创 2023-02-10 10:58:48 · 5103 阅读 · 0 评论 -
Docker进阶 - 6. docker network 网络模式之bridge
Docker 服务默认会创建一个 docker0 网桥(其上有一个 docker0 内部接口),该桥接网络的名称为docker0,它在内核层连通了其他的物理或虚拟网卡,这就将所有容器和本地主机都放到同一个物理网络。Docker 默认指定了docker0接口的IP地址和子网掩码,让主机和容器之间可以通过网桥相互通信。 网桥docker0创建一对对等虚拟设备接口一个叫veth,另一个叫eth0,成对匹配。整个宿主机的网桥模式都是docker0,类似一个交换机有一堆接口,每个接口叫veth,每个容器实例内部也有一原创 2023-02-10 00:15:30 · 1115 阅读 · 0 评论 -
Docker进阶 - 5. docker network 简介
docker 启动之后,会产生一个名为 docker0的虚拟网桥。就是通过这个网桥与宿主机之间,以及容器与容器之间进行连接。原创 2023-02-08 22:31:43 · 763 阅读 · 0 评论 -
Docker进阶 - 4. Dockerfile 案例 - 发布微服务部署到Docker
1. 在IDEA工具里搞定微服务jar包 (docker_boot-SNAPSHOT.jar) 并上传到宿主机(Linux)中。直接在地址栏访问:[宿主机linux ip]:6001/order/index,如成功,则打包运行成功。2. 编写 Dockerfile 文件,注意:Dockerfile和jar包要在一个文件目录下。3. 构建镜像。docker build -t 新镜像名字:TAG . 4. 运行容器. 5. 测试容器原创 2023-02-08 11:25:34 · 322 阅读 · 0 评论 -
Docker进阶 - 3. Dockerfile 案例 - 编写构建和运行
语法:docker build -t 新镜像名字:TAG . 【注意,TAG后面有空格,有个点】构建一个新的镜像:centos7 + vim + ifconfig + jdk8。的学习笔记,仅供参考。如看其他Docker内容,可看我博客Docker系列。语法:docker run -it 新镜像名字:TAG。注:本文部分图文内容来自于。原创 2023-02-07 00:12:20 · 311 阅读 · 0 评论 -
Docker进阶 - 2. Dockerfile 常用保留字简介
DockerFile 常用保留字简介。1. FROM2. MAINTAINER3. RUN4. EXPOSE5. WORKDIR6. USER7. ENV8. VOLUME9. COPY10. ADD11. CMD12. ENTRYPOINT13. CMD 和 RUN 命令的区别原创 2023-02-06 17:19:38 · 861 阅读 · 0 评论 -
Docker进阶 - 1. DockerFile 简介
DockerFile是用来构建Docker镜像的文本文件,是由一条条构建镜像所需的指令和参数构成的脚本。其官网地址为构建步骤:编写 DockerFile文件 --> 使用docker build 命令构建镜像 --> docker run运行容器实例。原创 2023-02-05 13:09:20 · 668 阅读 · 1 评论 -
Docker - 13. 容器卷常用操作
1. 宿主和容器之间映射添加容器卷,docker run -it --privileged=true -v /宿主机绝对路径目录:/容器内目录 镜像名2. 宿主和容器之间映射添加容器卷的命令时,默认的读写方式是主机和容器内都可以进行读写操作3. u1完成了和宿主机的映射,而容器u2如想继承u1的卷规则,可以使用如下命令:docker run -it --privileged=true -volumes-from 父类 --name u2 镜像名原创 2023-02-05 00:00:02 · 590 阅读 · 0 评论 -
Docker - 12. 容器卷基本概念
之前对于Docker容器产生的数据,如果不进行备份,那么当容器实例删除后,容器内的数据就会跟着删除,我们可以使用cp命令来手动进行容器和镜像的备份,但却不能做到实时备份。卷就是目录或文件,存在于一个或者多个容器中,由docker挂载到容器,但不属于联合文件系统,因此能够绕过联合文件系统而提供一些用于存储或共享数据的特性。因此容器卷的本质就是。将本地和Docker容器内的数据进行关联和共同,实现实时更新和备份。将容器内的数据同步保存到宿主机的磁盘中,实现数据的持久化。原创 2023-02-04 22:57:39 · 589 阅读 · 0 评论 -
Docker - 11. 本地镜像发布到私有库
如果涉及到公司机密文件,使用DockerHub、阿里云这样的公共镜像仓库就不合适,所以需要创建一个本地私人仓库提供给团队使用,基于公司内部项目构建镜像。默认情况下仓库被创建在容器的/var/lib/registry目录下,建议用容器卷映射,方便于宿主机联调。11. 通过新镜像进入容器,看是否能够使用 ifconfig 命令,如果显示如下命令,则往私服库推送和拉取镜像成功。9. 将新镜像使用push命令推送到私服库,并使用curl命令验证私服库镜像。10. 删除本地新镜像,并从私服库拉取镜像。原创 2023-02-04 16:39:28 · 949 阅读 · 0 评论 -
Docker - 10. 本地镜像发布到阿里云
登录成功如下图所示,我们将镜像 ubuntu_addvim 推送到阿里云仓库。7. 上述完成,点击下一步,进入如下界面,选择本地仓库,点击创建镜像仓库。5. 打开“镜像仓库”,选择刚创建的命名空间,然后点击“创建镜像仓库”6. 点击创建镜像仓库,填写下面红框信息,并设置仓库类型为 “公开”注意:红框里的仓库名称就是自己要上传和拉取的镜像名字,不要弄错!8. 创建成功后,有如下界面,具体上传镜像,使用如下命令即可。3. 创建个人实例,未创建前如下图1,创建后见下图2。原创 2023-02-03 19:31:34 · 738 阅读 · 0 评论 -
Docker - 8. Docker镜像底层与commit新镜像
Docker 镜像是一个特殊的文件系统,除了提供容器运行时所需的程序、库、资源、配置等文件外,还包含了一些为运行时准备的一些配置参数。镜像在构建之后其内容不会被改变。定义:UnionFS 是 Docker 镜像的基础,本质是一种分层、轻量级并且高性能的文件系统。特点:[1] 它支持对文件系统的修改作为一次提交来一层层的叠加。[2] 可以将不同目录挂载到同一个虚拟文件系统下。[3] 镜像构建时,会一层层构建,前一层是后一层的基础。每一层构建完就不会再发生改变,后一层上的任何改变只发生在自己这一层。分层存储使得原创 2023-02-03 11:43:49 · 841 阅读 · 0 评论 -
Docker - 7. 其他常用命令 docker run -d、logs、top 、inspect、exec 、attach、cp、export、import
注意:通过后台启动容器,就必须要有一个前台进程,否则会导致该容器自动退出。因为docker容器运行必须有一个前台进程执行, 如果没有前台进程,容器认为空闲,如果容器运行的命令不是那些一直挂起的命令(eg. 运行top,tail等),则会自行退出。语法:docker logs [选项] 容器 【其中容器可以用名字也可以用容器id】语法:docker inspect 容器。语法:docker top 容器。原创 2023-01-31 19:49:16 · 487 阅读 · 0 评论 -
Docker - 6. 容器常用命令 docker run、ps、exit、rm、start、restart、stop、kill
当启动并进入容器时,左侧变成了容器id,通过ls可以查看容器内的centos。(2) dcoker run 和 docker start的区别。容器是基于镜像创建的, 即容器中的进程依赖镜像中的文件。语法:docker run [可选参数] image。示例:新建一个centos容器,启动并进入容器。(1) -p ip:主机端口:容器端口。(2) -p 主机端口:容器端口(常用)镜像是个文件,容器是由镜像实例化而来的。语法:docker ps [选项](1) 镜像和容器的关系。(3) -p 容器端口。原创 2023-01-31 11:44:35 · 2561 阅读 · 0 评论 -
Docker - 5. 镜像常用命令 docker images、search、pull、system df 、rmi
1. 帮助命令docker version # 显示Docker版本信息docker info # 显示Doc2. 镜像命令【1】docker images [选项]:查看所有镜像、仓库、标签和大小【2】docker search [选项] 镜像名字:在 Docker Hub 中搜索镜像【3】docker pull 镜像名字[:tag]:下载镜像,tag为指定的版本【4】docker rmi [选项] 镜像:删除指定镜像原创 2023-01-30 23:37:27 · 1553 阅读 · 0 评论 -
Docker - 4. Docker 帮助启动类命令
1. 启动 docker:systemctl start docker2. 停止 docker:systemctl stop docker3. 重启 docker:systemctl restart docker4. 查看 docker 状态:systemctl status docker5. 保持开机自动启动:systemctl enabl6.显示 docker 版本信息:docker version7.显示 docker 系统信息9. 查看 docker 命令帮助文档原创 2023-02-01 22:21:03 · 396 阅读 · 0 评论 -
Docker - 3. Ubuntu安装Docker
(11) 通过运行hello-world镜像来验证Docker,具体步骤为一开始找不到这个镜像,然后就去远程镜像仓库拉取hello-world镜像,如果拉取成功,则显示Docker可以正常工作。(6) 安装Docker相关内容,安装过程较慢。(4) 添加 Docker 的 GPG 密钥(将默认地址的更换成阿里云的地址)(5) 设置远程镜像仓库(同理,将默认国外的更新成阿里云镜像,会快)(1) 卸载旧版本Docker,如果之前没有安装,则无需执行。(12) 查看一下刚才拉取的镜像。(7) 启动Docker。原创 2023-01-28 00:10:55 · 386 阅读 · 0 评论 -
Docker - 2. Docker 工作原理
(1) Docker是一个Client-Server结构的系统,Docker守护进程(图中Docjer daemon)运行在主机上,然后通过Socket链接客户端往返,守护进程从客户端接收命令并管理在主机上的容器。(2) 对于Docker客户端(图中Docker_Client),可以通过 docker build, docker pull和docker run等命令与守护进程进行通讯,并发送请求给后者,从而进行docker容器的打包,拉取和运行。(3) 在主机上通过镜像Images生成容器,然后原创 2023-02-01 18:31:00 · 468 阅读 · 0 评论 -
Docker - 1. Docker简介
Docker 是一个开源的应用容器引擎,可以打包应用及依赖包到一个可移植的容器中,从而发布到任何机器上容器是完全使用沙箱机制,相互之间相互独立,不会影响。1. 能够进行更快的交付和部署,即打包镜像发布测试,一键运行2. 更便捷的升级和扩容3. 更简单的系统运维,使开发和测试环境高度一致4. 更高效的计算资源利用:Docker是内核级别的虚拟化,可以在一个物理机上运行多个容器实例,将服务器的性能运用到极致原创 2023-01-27 17:37:47 · 813 阅读 · 2 评论