目录

Life in Flow

知不知,尚矣;不知知,病矣。
不知不知,殆矣。

标签: Container (21)

Docker

NameSpace 实现了资源隔离 UTS:每一个NameSpace都拥有独立的主机或域名,可以把每个NameSpace认为一个独立主机。 IPC:每个容器依旧使用linux内核中进程交互的方法,实现进程间通信 Mount:每个容器的文件系统是独立的 Net:每个容器的网络是隔离 User: 每个容器的用户和组ID是隔离,每个容器都拥有root用户 PID:每个容器都拥有独立的进程树,由容器是物理机中的一个进程,所以容器中的进程是物理机一个进程的线程 容器使用的命名空间有哪些? 应用程序运行环境隔离的空间,就是一个容器,每一个容器都将拥有UTS,IPC,Mount,Net,User,PID。 CGroup 实现了资源限制、限制、审计等… LXC Linux Container,可以提供轻量级的虚拟化。Docker底层就是使用LXC来实现的。以LXC为基础实现了更强的功能。 Docker安装 yum install -y yum-utils device-mapper-persistent-data lvm2 yum-config-manager --add-repo http://m....

mysql5.7 on docker

Linux 使用mysql 5.7 docker镜像 my.cnf文件放置在宿主机/etc/mysql/下 数据存储在宿主机 /data/mysql下 端口对外端口使用50000 #拉取镜像 docker pull mysql:5.7 #mkdir /etc/mysql/ cat > /etc/mysql/my.cnf <<EOF [mysqld] #skip-name-resolve port = 3306 character-set-server=utf8mb4 collation-server=utf8mb4_unicode_ci skip-character-set-client-handshake=1 default-storage-engine=INNODB max_allowed_packet = 500M explicit_defaults_for_timestamp=1 long_query_time = 10 EOF mkdir -p /data/mysql docker run --name mysql5.7 -v /etc/mysql:/e....

Docker网络模式与数据共享

桥接模式  桥接模式是docker 的默认网络设置,当Docker服务启动时,会在主机上创建一个名为docker0的虚拟网桥,并选择一个和宿主机不同的IP地址和子网分配给docker0网桥。 bridge:桥接模式 host:主机模式 none:无网络模式 # 查看网络模式 [root@master ~]# docker network ls NETWORK ID NAME DRIVER SCOPE faa039ad2afb bridge bridge local 248060a373f7 host host local d89a824ed577 none null local 主机模式  host 模式:该模式下容器是不会拥有自己的ip地址,而是使用宿主机的ip地址和端口。 # 主机模式启动容器(不指定网络模式,默认使用桥接模式) docker run -itd --net=host mycentos:nginx /usr/local/nginx/sbin/nginx -g "daemon off;" # http://192.168.31.201 Welcome to n....

Docker自定义镜像

自定义镜像的常见方式 基于Docker Commit制作镜像 基于dockerfile制作镜像,Dockerfile方式为主流的制作镜像方式。 镜像的分层结构 多个容器层共享同一个镜像层 对容器的任何改动都是发生在容器层 容器层是可写可读,而镜像层只读 class : object [root@master ~]# docker history mycentos:v2 IMAGE CREATED CREATED BY SIZE COMMENT 6179c08f8204 17 minutes ago /bin/sh -c yum install -y net-tools 100MB 11f381c5e640 17 minutes ago /bin/sh -c #(nop) COPY file:8eda00bfac1c94e7… 0B 25cc0d469386 17 minutes ago /bin/sh -c #(nop) WORKDIR /home/soulboy 0B a6624f371c02 17 minutes ago /bin/sh -c echo "正在构建镜像!!!....

K8S

CentOS8 yum/dnf 配置国内源 # 挂载镜像 [root@localhost /]# mkdir /media/CentOS [root@localhost /]# mount /dev/cdrom /media/CentOS # 修改配置文件 [root@localhost /]# vi /etc/yum.repos.d/CentOS-AppStream.repo [AppStream] name=CentOS-$releasever - AppStream baseurl=http://mirrors.aliyun.com/centos/$releasever/AppStream/$basearch/os/ gpgcheck=1 enabled=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial [root@localhost /]# vi /etc/yum.repos.d/CentOS-Base.repo [BaseOS] name=CentOS-$releasever - Base baseurl=....

Docker引擎

简介  Docker引擎是用来运行和管理容器的核心软件。基于开放容器计划(OCI)相关标准要求,Docker引擎采用了模块化的设计原则,其组件是可替换的。  Docker引擎主要组件构如下: Docker客户端 Docker守护进程 containerd runc 摆脱LXC  LXC提供了对诸如:命名空间、控制组、等基础工具的操作能,他们是基于Linux内核的容器虚拟化技术。  因为LXC是基于Linux,这不利于Docker实现跨平台,其次,如果核心的组件依赖于外部工具,会给Docker项目带来巨大的风险。因此,Docker公司开发了名为Libcontainer的自研工具,用于替代LXC。Libcontainer的目标是成为与平台无关的工具,可基于不同内核为Docker上层提供必要的容器交互功能。在Docker 0.9版本中,Libcontainer取代 拆分大而全的Docker daemon  随着时间的退役,Docker daemon的整体性带来了越来越多的问题。 难于变更。 运行越来越慢。  Docker公司意识到这些问题,开始努力着手拆解大而全的Docker da....

Kubernetes

常见容器编排技术 docker compose(单机)、docker swarm(集群)、docker machine(快速创建一个docker host) mesos、marathon kubernetes DevOps CI:持续集成。Continuous Integration CD:持续交付。Delivery CD:持续部署。Deployment DevOps、MicroServices、Container 微服务可以充分利用容器技术本身的特性(分发、构建、部署)。 容器技术弥补了DevOps中的交付环节和部署环节的裂缝,使得DevOps可以落地。DevOps又进一步推动了容器编排技术。 DevOps思想落地于容器编排技术之上。 IaaS、PaaS、SaaS Kubernetes简介  舵手,源于谷歌的Borg系统,Kubernetes是Google开源的一个容器编排引擎,它支持自动化部署、大规模可伸缩、应用容器化管理。