Docker
Docker学习
35s
这个作者很懒,什么都没留下…
展开
-
Docker-Service
一、概念1. docker service 是docker服务,不同于docker容器,容器是独立的且不具备扩缩容能力,服务是集群里的容器,服务可以一键动态的扩缩容,对一个服务创建多个副本2. docker service 是基于swarm的基础上进行的,并且只能在管理节点进行操作二、测试docker service --help可以查看docker服务的所有命令[root@QK ~]# docker service --helpUsage: docker service COMMAND原创 2022-02-12 18:51:32 · 5882 阅读 · 0 评论 -
Docker-Swarm
一、Swarm概念与模式1. Docker Swarm 是 Docker 的集群管理工具2. Swarm 集群由管理节点(manager)和工作节点(work node)构成3. 所有的操作都在管理节点4. Swarm是Docker Engine自带的,不需要安装二、原创 2022-02-12 14:45:50 · 1257 阅读 · 0 评论 -
Docker-Compose
一、简介1. DockerFile是将单体应用进行镜像化,进而生成可运行的容器,而Compose是在DockerFile的基础上,对这些生成的容器进行编排2. Compose是使用YAML文件对容器进行配置3. Compose是Docker官方的开源项目,需要安装二、概念1. 服务service:容器、应用(redis、mysql)2. 项目project:一组关联的容器三、示例四、安装下载(github下载比较慢,可以使用国内的)sudo curl -L "https://git原创 2022-02-08 17:03:42 · 351 阅读 · 0 评论 -
Docker-Springboot项目打包到Docker镜像
1. 创建一个springboot项目,并测试是否正常运行2. 打包原创 2021-05-21 17:32:58 · 159 阅读 · 0 评论 -
Docker-网络连通
1. 测试不同网段的网络连通性已知tomcat01、tomcat02是属于docker0网络,tomcat04、tomcat05是属于mynet网络[root@QK ~]# docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES8eee1b519d7f tomc原创 2021-05-21 17:15:16 · 168 阅读 · 0 评论 -
Docker-自定义网络
1. 查看所有的docker网络[root@QK ~]# docker network lsNETWORK ID NAME DRIVER SCOPE89de730f6075 bridge bridge localeb6d94d2bf0a host host local89204f4ab500 none null local[root@QK ~]# 2. 网络模式bridge :桥接 docker(默原创 2021-05-20 17:08:56 · 108 阅读 · 0 评论 -
Docker-容器互联--link
1. 单纯的通过ping命令无法实现容器名互联[root@QK ~]# docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMESca716626930c tomcat "catalina.sh run" 47 hours ago Up 47 hours原创 2021-05-20 15:42:58 · 144 阅读 · 0 评论 -
Docker-Docker网络
三个网络测试容器与容器、主机与容器之间是否可以互联[root@QK ~]# ip addr1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft原创 2021-05-18 16:42:07 · 530 阅读 · 2 评论 -
Docker-创建镜像的两种方式
1. 通过commit命令,将容器提交为一个镜像2. 通过Dockerfile文件build构建镜像Dockerfile制作镜像原创 2021-05-18 15:40:09 · 139 阅读 · 0 评论 -
Docker-流程小结
原创 2021-05-18 15:24:07 · 55 阅读 · 0 评论 -
Docker-上传镜像
1. 上传镜像需要两个步骤,先打tag,再push2. 一个仓库可以有多个同名不同tag的镜像3. 如果上传本地镜像到已存在的docker仓库,需要先把本地镜像tag成已存在仓库的名字,再上传测试1在线创建一个仓库,命名为ontest将本地镜像tag成仓库名:标签,再上传[root@QK ~]# docker imagesREPOSITORY TAG IMAGE ID CREATED SIZEhello-world原创 2021-05-17 10:31:40 · 386 阅读 · 1 评论 -
Docker-Dockerfile制作Tomcat镜像
1. 在本地任一目录放置JDK,Tomcat压缩包,以及readme.txt文件jdk-8u11-linux-x86.tar.gzapache-tomcat-9.0.22.tar.gzreadme.txt2. 并在此目录创建Dockerfile文件并编辑vim DockerfileFROM centos#标注作者等信息LABEL qk<110@qq.com>#将readme.txt添加到容器内的/usr/local/目录下COPY readme.txt /usr/loca原创 2021-05-16 12:41:01 · 889 阅读 · 2 评论 -
Docker-CMD和ENTRYPOINT
1. 前情提要CMD和ENTRYPOINT是Dockerfile里构建镜像的命令2. CMD在构建镜像时,如果使用了多个CMD,只生效最后一个CMD是容器启动时默认要执行的命令在dockerfile内部用CMD提前写好启动时要执行的命令或在启动容器时docker run追加是一样的效果如果dockerfile内部有CMD,docker run 也追加了命令,则docker run 追加的命令会覆盖CMD的命令测试创建dockerfile编写dockerfileFROM cen原创 2021-05-14 17:27:33 · 249 阅读 · 0 评论 -
Docker-数据卷容器
1. 先区分二者容器数据卷:一种数据同步机制,主机与容器进行挂载数据卷容器:容器之间的数据进行同步,子容器“继承”父容器的数据,也进行了数据同步2. 容器之间同步数据卷容器1和主机挂载docker run -d -it --name=mycentos01 -v myvolume:/home/centos centos容器2和容器1挂载docker run -d -it --name=mycentos02 --volumes-from mycentos01 centos容器原创 2021-05-08 17:43:07 · 144 阅读 · 0 评论 -
Docker-Dockerfile
1. Dockerfile结构大致分为四个部分:(1)基础镜像信息(2)维护者信息(3)镜像操作指令(4)容器启动时执行指令。Dockerfile每行支持一条指令,每条指令可带多个参数,支持使用以#号开头的注释。一个dockerfile在build后会生成一个自定义的镜像docker build -f dockerfile文件名 -t 镜像名:镜像版本号参考文章...原创 2021-05-08 16:27:57 · 57 阅读 · 0 评论 -
Docker-具名挂载和匿名挂载
1. 匿名挂载docker run -d -p 3310:3306 -v /home/nginx:/etc/nginx nginx#指定主机和容器的挂载目录,但是没有挂载名docker run -d -p 3310:3306 -v /etc/nginx nginx#只指定了容器目录,没有指定主机目录以上方式都是匿名的挂载,创造的是匿名卷2. 查看主机所有的volume(卷)cd /var/lib/docker/volumes或者docker volume ls二者效果一样原创 2021-05-08 14:28:52 · 290 阅读 · 0 评论 -
Docker-部署连接mysql-练习
下载镜像,启动容器并指定端口,密码[root@QK ~]# docker pull mysql:5.75.7: Pulling from library/mysqlf7ec5a41d630: Already exists 9444bb562699: Already exists 6a4207b96940: Already exists 181cefd361ce: Already exists 8a2090759d8a: Already exists 15f235e0d7ee: Already原创 2021-05-08 11:19:07 · 83 阅读 · 0 评论 -
Docker-容器数据卷
1. 容器数据卷可以干什么?容器与容器间数据共享docker中产生的数据会被同步到本地,即使删除容器,数据也不会丢失将容器内的目录挂载到Linux上因为容器是隔离的,可以将容器内的文件系统和Linux系统的指定文件夹形成映射,也就是一种同步机制2. 使用数据卷方式一:直接使用命令挂载docker run -it -v 主机目录:容器内目录查看容器运行状态,可以发现挂载记录docker inspect 74c67636e58c源地址:主机内地址目的地址:容器内地址方式二:原创 2021-05-07 17:34:02 · 161 阅读 · 0 评论 -
Docker-加载和分层
Docker镜像实际上由一层一层的文件系统组成1. bootFS:docker镜像的最底层,这一层与典型的Linux/Unix系统一样,包含boot加载器和内核2. rootFS:在bootFS之上,包含的就是典型的Linux系统中的/dev,/proc,/bin,/etc等标准目录和文件。rootFS就是各种不同操作系统发行版,比如Ubuntu,Centos等。...原创 2021-05-05 22:41:18 · 141 阅读 · 0 评论 -
Docker-部署ElasticSearch-练习
1. 根据DockerHub上的命令,一条命令下载并运行ElasticSearchdocker run -d --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:7.6.2–net somenetwork 网络配置(暂时不考虑)elasticsearch:tag :版本号2. 由于ElasticSearch十分耗内存,所以如果服务器配置不够高,可能会出现严重卡原创 2021-05-04 22:25:53 · 107 阅读 · 0 评论 -
Docker-部署Tomcat-练习
下载镜像运行镜像[root@QK home]# docker pull tomcatUsing default tag: latestlatest: Pulling from library/tomcatbd8f6a7501cc: Pull complete 44718e6d535d: Pull complete efe9738af0cb: Pull complete f37aabde37b8: Pull complete b87fc504233c: Pull complete 8b.原创 2021-05-02 18:47:55 · 83 阅读 · 0 评论 -
Docker-部署Nginx-练习
大致步骤搜索镜像docker search nginx 拉取镜像docker pull nginx查看镜像docker ps运行镜像docker run -d --name nginx01 -p 3344:80 nginx# 以后台的方式运行nginx镜像,镜像名取名为nginx01,外网端口为3344,映射内网端口为80# -d 后台运行# --name 给容器命名,如果不命名,默认就为镜像名,但一个镜像启动多个容器时,就需要不同的命名加以区分# -p 宿主机原创 2021-05-02 18:03:47 · 188 阅读 · 0 评论 -
Docker-常用命令小结
原创 2021-05-02 17:04:43 · 58 阅读 · 0 评论 -
Docker-进入容器和拷贝容器
1. 容器的使用通常都是后台运行,如果中途需要进入容器,修改配置docker exec -it 容器ID#以交互的方式进入容器#进入容器后开启一个新的终端,可以在里面操作(常用)docker attach -it 容器ID# 进入容器正在执行的终端,不会启动新的进程区别exec 进入容器:进入容器后开启一个新的终端,可以在里面操作(常用)attach 进入容器:进入容器正在执行的终端,不会启动新的进程2. 从容器内拷贝文件到主机...原创 2021-04-27 16:51:57 · 546 阅读 · 0 评论 -
Docker-常用其他命令
后台启动容器docker run -d centos 启动容器并让其在后台运行,docker ps 却发现容器不在运行中,停止运行原因:docker容器后台运行,就必须有一个前台进程(对外提供服务),如果没有前台应用(容器发现自己没有提供服务),就会自动停止。查看日志...原创 2021-03-23 21:18:25 · 137 阅读 · 0 评论 -
Docker-常用命令
帮助命令docker version #显示docker的版本信息docker info # 显示docker的系统信息,包括镜像和容器数量docker 命令 --help #万能命令docker --help #可以查看docker的所有命令帮助文档的地址docker帮助文档镜像命令1. docker images 显示镜像docker images # 查看本机上的所有镜像解释REPOSITORY 镜像仓库原创 2021-03-21 15:59:42 · 104 阅读 · 0 评论 -
Docker-run的运行流程图
原创 2021-03-21 14:25:54 · 338 阅读 · 0 评论 -
Docker-安装
一. 环境准备CentOS系统二. 环境查看系统内核是3.10以上的系统版本三. 安装1. 卸载旧的如果以前没有安装过就不用卸载2. 根据官网的指导,先安装一些基本的环境安装需要的安装包yum install -y yum-utils设置镜像仓库yum-config-manager \ --add-repo \ https://download.docker.com/linux/centos/docker-ce.repo # 默认国外的,原创 2021-03-14 22:47:09 · 85 阅读 · 0 评论 -
Docker-组成
Docker的基本组成镜像(image)docker镜像就好比是一个模板,可以通过这个模板来创建容器服务举例:一个Tomcat镜像,run以后可以产生多个Tomcat容器,每个容器都提供Tomcat的服务举例:镜像和容器的关系更像:类和对象的关系,一个类可以创建多个(实例)对象最终服务的运行或者项目的运行就是在容器中运行的容器(container)Docker利用容器技术,独立运行一个或者一个组的应用,通过镜像来创建容器可以启动、停止、删除、基本命令可以简单的把容器理解为一个简易的原创 2021-03-14 21:44:04 · 69 阅读 · 0 评论 -
Docker-介绍
一. Docker介绍Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源。Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。Docker 从 17.03 版本之后分为 CE(Community Edition: 社区版) 和 EE(Enterp原创 2021-03-14 20:33:41 · 74 阅读 · 0 评论