首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏跟我一起学 K8s

    Docker源码解读

    由于github网站速度太慢,可以采用码云上的代码路径: moby:https://gitee.com/mirrors/moby.git 开启Docker学习之路,需要脚踏实地,从源码开始;网上也有一些关于 Docker源码的学习的资料,但是分析的源码都是比较老的版本,所以这里就班门弄斧一下,将自己学习Docker的总结一下,也是方便自己复习; Goland代码配置: 在GOPATH的目录下:src/github.com /docker/: git clone https://gitee.com/mirrors/moby.git 然后在Goland中添加对应的目录:

    1.3K10发布于 2020-04-26
  • 来自专栏程序人生 阅读快乐

    Docker源码分析

    本书是一本引导读者深入了解Docker实现原理的技术普及读物,主要目标是通过对Docker架构和源代码的详细讲解和解剖,帮助读者对Docker的底层实现有一个全面的理解。 作者通过大量的流程图和代码片段对Docker的架构、Docker的重要模块,特别是对Swarm、Machine和Compose这三个模块进行了详细介绍和深度剖析,无论是Docker的使用者还是开发者,通过阅读此书都可以对 Docker有更深刻的理解,能够更好的使用或者开发Docker

    59020发布于 2018-10-10
  • 来自专栏算法之美

    Docker源码分析(一):Docker架构

    文章来源: InfoQ推出了《Docker源码分析》系列文章。 本系列文章从源码的角度出发,详细介绍Docker的架构、Docker的运行以及Docker的卓越特性。本文是Docker源码分析系列的第一篇­­­——Docker架构篇。 1.2 Docker版本信息 本文关于Docker架构的分析都是基于Docker源码Docker相应版本的运行结果,其中Docker为最新的1.2版本。 的源码并不是一个枯燥的过程,反而可以从中理解Docker架构的设计原理。 Docker容器示意图如图4.8: 图4.8 Docker容器示意图 5 Docker运行案例分析 上一章节着重于Docker架构中各个部分的介绍。

    2.2K140发布于 2018-04-13
  • 来自专栏技术杂记

    Docker 基础5

    使用脚本安装Docker 确保Docker已经删除的情况下,执行如下命令 [root@h103 ~]# curl -sSL https://get.docker.com/ | sh + sh -c ' [root@h103 ~]# 启动Docker [root@h103 ~]# service docker start Redirecting to /bin/systemctl start docker.service [root@h103 ~]# service docker status Redirecting to /bin/systemctl status docker.service ● docker.service ; vendor preset: disabled) Active: active (running) since Tue 2016-01-19 17:49:51 CST; 5s ago 08:00" level=info msg="Docker daemon" commit=a34a1d5 ...n=1.9.1 Jan 19 17:49:51 h103 systemd[1]: Started

    45410编辑于 2022-02-09
  • 来自专栏自动化、性能测试

    Docker5)- docker version 命令详解

    如果你还想从头学起 Docker,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1870863.html 作用 显示 Docker 版本信息 语法格式 docker version [OPTIONS] 可以看到 Docker Client、Docker Server 的信息

    64610发布于 2020-11-05
  • 来自专栏全栈程序员必看

    docker5docker运行web应用

    接下来让我们尝试使用 docker 构建一个 web 应用程序。 我们将在docker容器中运行一个 Python Flask 应用来运行一个web应用。 运行一个web容器 docker pull training/webapp # 载入镜像 docker run -d -P training/webapp python app.py [root@jkc 网络端口的快捷方式 通过docker ps命令可以查看到容器的端口映射,docker 还提供了另一个快捷方式 docker port,使用docker port可以查看指定 (ID 或者名字)容器的某个确定端口映射到宿主机的端口号 我可以使用 docker port 0d3fe01b6c13 或 docker port lucid_lederberg 来查看容器端口的映射情况。 00:00:00 python app.py 检查 WEB 应用程序 使用 docker inspect 来查看 Docker 的底层信息。

    93710编辑于 2022-09-19
  • 来自专栏Kubernetes

    docker volume源码分析

    这是在docker v1.10.3版本的使用过程中,使用convoy 作为volume driver,在一次docker volume remove失败时,使我不得不对docker volume 的源码做一次分析 问题现象:创建曾删除过的volume会失败,请求无报错返回 重现过程: 创建容器,volume使用test5_volume 删除容器,删除volume 再次创建同名volume时失败 当时有一个Workaround 当时考虑是 docker 缓存没有及时清理的问题,于是得去分析下相关代码。 ##docker volume create源码分析: ? 如果此时,convoy和docker daemon缓存信息不同步,则create操作不能如愿了。 ##docker volume remove源码分析: ? 如果此时convoy 中volume数据和docker daemon 缓存中volume数据不一致,也不会得到纠正。 ##docker volume list源码分析: ?

    1.5K60发布于 2018-04-13
  • 来自专栏架构师成长之路

    docker实践(5) 容器插件docker plugin

    一、docker plugin Docker Plugin 是 Docker 社区提供的一种扩展机制,可以通过插件来增强 Docker 引擎的功能。 Docker Plugin 可以让我们快速、轻松地扩展 Docker 引擎的功能,将其变得更加灵活和可定制化。 参考文档:docker plugin | Docker Documentation | Docker文档 插件是在与docker守护程序相同或不同的主机上运行的进程,该进程通过将文件放置《插件发现》章节所描述的插件目录之一中的相同 升级插件时,您应该首先停止Docker守护进程,升级插件,然后再次启动Docker5、API设计 插件API是基于HTTP的RPC样式的JSON,非常类似于webhooks。 请求从 Docker守护程序(Docker daemon)到 该插件。

    3.1K10编辑于 2023-12-10
  • 来自专栏大数据解决方案

    快速入门Docker(5)——DockerFile|Docker网络

    CMD ["ls","-a"] ---> Running in 245e5b211e0f Removing intermediate container 245e5b211e0f ---> e53c44d55553 dashujulaoge/mytomcat:1.0 The push refers to repository [docker.io/dashujulaoge/mytomcat] a220a5aaf18b : Pushed 1.0: digest: sha256:5fe61237de0a6c3f4fe3d728600c10b42098377b8ceca9bac1a192fb42f28795 size: 954 192.168.0.1 mynet 52059516f0e8b6a9dd7beafea725dde886f6e1555141dbe390213689b79bb2c5 [root@192 ~]# docker 启动两个tomcat进行测试 [root@192 ~]# docker run -d -P --name tomcat-net-01 --net mynet tomcat 6357504d4d17dac1c94e5b0ed4ddf8df74d9378e168fe05d21fee2da99da5581

    91620发布于 2021-02-04
  • 来自专栏技术杂记

    Docker Registry5

    存储 默认情况下,registry 中的数据是以docker卷的形式存在于本地文件系统 可以使用 -v 的参数来指定一个卷的位置,从而实现对数据存储的控制 [root@h103 ~]# ls anaconda-ks.cfg dockerfile [root@h103 ~]# docker ps -a CONTAINER ID IMAGE COMMAND registry registry:2 f0e1c155d7ad1e0607e33f9f0b9ff23f1d7e4761b88070486425f3137b513540 [root@h103 ~]# docker [root@h103 ~]# docker push localhost:5000/ubuntu The push refers to a repository [localhost:5000/ubuntu ] (len: 1) 8693db7e8a00: Pushed a4c5be5b6e59: Pushed c4fae638e7ce: Pushed f15ce52fc004: Pushed latest

    31510编辑于 2022-01-21
  • 来自专栏盛开在夏天的太阳

    5. Spring5源码--Spring AOP源码分析

    aop是面向切面编程,相比传统oop,aop能够在方法的前置,中置,后置中插入逻辑代码,对于项目中大量逻辑重复的代码,使用aop能很好的收口逻辑,将逻辑独立于业务代码之外,一处编写,多处使用。

    49110发布于 2020-12-02
  • 来自专栏技术杂记

    Docker Swarm 基础5

    创建 Swarm 集群 有了发现服务作基础,接下来就要创建 Swarm 管理节点,我们创建两个节点(分别在不同的服务器上)来模拟高可用架构 创建第一个管理节点 [root@h104 ~]# docker advertise 192.168.100.104:4000 consul://192.168.100.104:8500 a6a0adaa76a8771bf373998832deaa236d68513bb5f9de0b3051c49761447e1a [root@h104 ~]# docker ps -a CONTAINER ID IMAGE COMMAND ~]# docker run -d -p 4000:4000 swarm manage -H :4000 --replication --advertise 192.168.100.103:4000 STATUS PORTS NAMES [root@docker ~]#

    39130编辑于 2021-11-29
  • 来自专栏golang算法架构leetcode技术php

    golang 源码分析(16):Docker CE 18.03源码

    比如是否设置了"always"呀 ├── runconfig ├── vendor # go的vendor机制 └── volume # volume相关 负责存储配置的一般都叫 xx Store Docker 的设计是单机的,不是分布式的 Docker的设计是Client-Server模式的,平时我们用的docker这个命令被分散到 https://github.com/docker/cli 这个仓库去了 从命令行进入 入口在 cmd/dockerd/docker.go: func newDaemonCommand() *cobra.Command { opts := newDaemonOptions FullTimestamp: true, }) // LCOW: Linux Containers On Windows. ref: https://blog.docker.com 那我们要找一个新的入口点去跟踪 代码,所以我选择 docker run。从 docker/cli 库翻了翻,发现最后是调用 containers/create 这样一个接口。

    69620编辑于 2022-08-02
  • 来自专栏凯哥Java

    Docker学习系列】Docker学习5-Docker镜像理解

    Docker学习系列》教程已经发布的内容如下:【图文教程】Windows11下安装Docker Desktop【填坑】在windows系统下安装Docker Desktop后迁移镜像位置【Docker 学习系列】Docker学习1-docker安装【Docker学习系列】Docker学习2-docker设置镜像加速器【Docker学习系列】Docker学习3-docker的run命令干了什么? docker为什么比虚拟机快? 【Docker学习系列】Docker学习2-常用命令之启动命令和镜像命令【Docker学习系列】Docker学习系列3:常用命令之容器命令【Docker学习系列】Docker学习4-常用命令之重要的容器命令镜像是什么 如同花卷Docker镜像加载原理是什么?为什么docker镜像要采用这种分层结构呢?镜像分层最大的一个好处就是共享资源,方便复制迁移,就是为了复用。

    75330编辑于 2022-12-07
  • 来自专栏草根专栏

    Docker & ASP.NET Core (5):Docker Compose

    docker-compose.yml文件 docker-compose.yml文件就是用来配置服务的,这里有一个官网给出的例子: ? Docker Compose的命令 docker-compose build 把服务构建成镜像。 此外还有这些常用形式的命令: docker-compose logs docker-compose ps docker-compose stop docker-compose start docker-compose 执行docker-compose build 定义好docker-compose.yml之后,就可以进行构建了,执行docker-compose build: ? 很快就完成了。 执行docker-compose up docker-compose up: ? ?

    2.1K20发布于 2018-12-19
  • 来自专栏全栈程序员必看

    java md5加密源码_javaMD5加密源码

    ; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; public class MD5Tool { /** * 该方法将指定的字符串用MD5算法加密后返回。 * @param s * @return */ public static String getMD5Encoding(String s) { byte[] input=s.getBytes(); ’,’d’,’e’,’f’}; try{ // 获得一个MD5摘要算法的对象 MessageDigest md=MessageDigest.getInstance(“MD5”); md.update (input); /* MD5算法的结果是128位一个整数,在这里javaAPI已经把结果转换成字节数组了 */ byte[] tmp = md.digest();//获得MD5的摘要结果 char[]

    81610编辑于 2022-09-14
  • 来自专栏IT云清

    Docker---(5)Docker 部署SpringBoot web项目

    Spring项目发布,请参考:docker---(3)docker 发布spring web项目 SpringBoot入门,请参考:SpringBoot--从0开始学SpringBoot Docker入门 ,请参考: Docker---从零开始学Docker 1.pom.xml 将打包方式改为war包 [java] view plain copy <packaging>war</packaging>   plain copy root@iZuf6axmuekh1n14dwcufmZ:~# docker exec -it tomcat2 /bin/bash   root@91ebdd8d5c65:/usr @91ebdd8d5c65:/usr/local/tomcat/webapps# rm -rf tweb   root@91ebdd8d5c65:/usr/local/tomcat/webapps# ls :~# docker exec -it tomcat2 /bin/bash   root@91ebdd8d5c65:/usr/local/tomcat# ls   LICENSE  NOTICE  RELEASE-NOTES

    1.2K20发布于 2019-01-22
  • 来自专栏盛开在夏天的太阳

    2.1 Spring5源码--源码编译

    源码下载   git地址: 进入https://github.com/spring-projects/spring-framework   Spring的源码是发布在github上面的 ? ? 构建工作准备 安装源码有两种方式: 第一种: 下载spring使用的对应的Gradle版本,安装 第二种: 使用自带的gradleWrapper. 查看spring源码中gradle的版本. 下载对应版本的gradle. 在gradle-wrapper.properties中查看版本号 ? 编译Spring源码项目 1. 编译compileTestJava模块 进入到源码所在文件夹, 执行一下命令. 我的是mac本, 所以需要加./, 如果是windows本就不需要加 .

    1.4K20发布于 2020-09-27
  • 来自专栏小工匠聊架构

    Spring5源码 - 构建源码环境

    2020.2.1 + OpenJDK8U-jdk_x64_windows_hotspot_8u265b01 + gradle-6.5.1-bin.zip 遵循官方指导文档 ---- git clone 源码 源码地址: https://github.com/spring-projects/spring-framework ? 选择你拉取的spring源码,方式选择build.gradle ? 等待index完成,需要下载jar包 ,不是很快(我用了好几次,耗时好几个小时),如果期间出错,多试几次。 ? 至此,spring5.1.x的源码编译导入idea就算完成了。

    85920发布于 2021-08-17
  • 来自专栏Java架构师必看

    spring源码分析5

    spring源码分析5 强烈推介IDEA2020.2破解激活,IntelliJ 原文链接:https://gper.club/articles/7e7e7f7ff3g5bgc0

    35520发布于 2021-04-13
领券