最近阿里的面试官问我Docker是做什么用的,我记得之前360和美团,京东的都问过,但是一直没时间看,最近有时间了,系统的学习了一下Docker,在此做一下记录,方便各位看官学习交流 一.Docker概述: Docker: 本意是码头工人,言外之意是集装箱: Java号称“一次编译,到处运行”,因为java虚拟机解决平台的兼容性问题,所以有java虚拟机的地方就能跑java代码: Docker是:“一次封装,到处运行”,因为docker决绝了应用环境的问题,安装了docker的平台就能跑“doc…
Docker Compose 一键部署Nginx代理Tomcat集群 目录结构 [root@localhost ~]# tree compose_nginx_tomcat/ compose_nginx_tomcat/ ├── docker-compose.yml ├── mysql │   ├── conf │   │   └── my.cnf │   └── data ├── nginx │   ├── Dockerfile │   ├── nginx-1.12.1.tar.gz │   └─…
Docker Compose 一键部署LNMP 目录结构 [root@localhost ~]# tree compose_lnmp/ compose_lnmp/ ├── docker-compose.yml ├── mysql │ ├── conf │ │ └── my.cnf │ └── data ├── nginx │ ├── Dockerfile │ ├── nginx-1.12.1.tar.gz │ └── nginx.conf ├── php │ ├── Dockerfile │ ├…
Docker Compose 一键部署多节点爬虫程序 目录结构 [root@localhost ~]# tree compose_crawler/ compose_crawler/ ├── centos │ ├── curl.sh │ └── Dockerfile └── docker-compose.yml 1.创建DockerCompose项目目录 mkdir compose_crawler cd compose_crawler/ 2.创建centos管理目录 mkdir centos cd…
流水线可以让项目发布流程更加清晰,docker可以大大减少Jenkins配置. 1.前言 数据卷挂载到 /var 磁盘目录下,因为该磁盘空间较大,后面需要挂载容器数据卷,以防内存吃紧. 为了可以留存启动Jenkins服务的配置以及启停Jenkins方便,我采用 Docker Compose 部署(没有用到Compose的核心功能.没有关联容器,纯粹个人喜好,大佬们有更好的方式烦请指点一二,感谢) 先简单介绍一下 Docker Compose 2.Docker Compose Docker Com…
Docker-compose部署nginx 创建配置文件 mkdir -p /usr/local/docker/nginx cat > /usr/local/docker/nginx/docker-compose.yml<<'EOF' version: '3.1' services: nginx: # 镜像名称 image: nginx # 容器名字 docker run --name container_name: nginx # 开机自动重启 restart: always port…
原文:http://tomcat.apache.org/tomcat-7.0-doc/deployer-howto.html Introduction(介绍) Deployment is the term used for the process of installing a web application (either a 3rd party WAR or your own custom web application) into the Tomcat server. [“部署”是用来表示…
如果直接使用以下的docker-compose 文件部署会有通过多播通信获取endpoint 异常的问题(circus 在stats endpoint 获取少了一个c) 这个问题是部分网络情况下会出现(多播包异常) version: "3" services: circus: image: dalongrong/circus:3.7-slim-stretch ports: - "9999:9999" - "5555:5555" volumes:…
1.把代码托管到Github上 2.安装Docker 3.安装Jenkins 4.在项目中编写Dockerfile.publish.sh (1)Dockerfile内容 # 基于dotnet基础环境构建镜像 FROM docker.io/microsoft/dotnet # 创建TestDemo目录 RUN mkdir /TestDemo # 把发布的内容拷贝到docker容器的TestDemo目录下 COPY /publish /TestDemo # 设置工作目录 WORKDIR /TestD…
步骤: 1.设置端口号:找到所解压的tomcat的目录下中的conf文件夹,再用editPlus打开conf文件夹中的server.xml文件,tomcat初始端口为8005,8080,8009,如果服务器中的这三个端口号未被占用,则可以不修改,若被占用,则改成未被占用的端口 2.设置jdk和tomcat路径:找到所解压的tomcat的目录下的bin文件夹,再用记事本打开catalina.bat文件,在最前面加入下面两句:(需要根据自己服务器中的jdk和tomcat的安装的路径进行相关的修改)…
安装 https://docs.docker.com/compose/install/#install-compose…
目录结构如下 mysql/conf/my.cnf [mysqld] user=mysql port=3306 datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock pid-file=/var/run/mysql/mysql.pid log_error=/var/log/mysql/error.log character_set_server = utf8 max_connections=3600 nginx/Dockerfile FROM…
先上部署成功后的截图,各个菜单点击均无报错 DockerCompose 包含: 1. 三个mysql5.7数据库 2. redis php会话存储+ memcached 3. 小老板php主程序 dockercompose.yaml Dockerfile 踩坑经历: 1. 本人对PHP不太熟,仅限达到能修改源码水平 2. php fpm环境配置,nginx环境变量传递这里花了大量时间,折腾一天后也被迫升级到php5.6 3. mysql数据库初始化遇到 脚本兼容问题,编码问题等..(目标是一键启…
目录 1 下载 Docker 镜像 2 部署Web项目 2.1 通过Dockerfile自定义项目镜像 2.2 启动自定义镜像, 生成一个容器 2.3 另一种启动方式: 交互式启动 3 (附) 向镜像中添加文件 在此篇之前, 需要配置一些环境, 请参考上一篇的介绍: Docker 01 - CentOS 7 中安装 Docker 的详细步骤. 1 下载 Docker 镜像 # 查看本地镜像(暂时没有任何镜像): [root@localhost /data]# docker images REPO…
谈到微服务的话题,技术上我们往往会涉及到多服务.多容器的部署与管理. Docker 有三个主要的作用:Build, Ship和Run.使用docker compose我们可以在Run的层面解决很多实际问题,如:通过创建compose(基于YUML语法)文件,在这个文件上面描述应用的架构,如使用什么镜像.数据卷.网络.绑定服务端口等等,然后再用一条命令就可以管理所有的服务(如启动.停止.重启.日志监控等等). 本文通过发布3个APP(App1,App2,App3),来演示Docker在服务发布.网…
Docker Compose 前面我们使用 Docker 的时候,定义 Dockerfile 文件,然后使用 docker build.docker run 等命令操作容器.然而微服务架构的应用系统一般包含若干个微服务,每个微服务一般都会部署多个实例,如果每个微服务都要手动启停,那么效率之低,维护量之大可想而知使用 Docker Compose 可以轻松.高效的管理容器,它是一个用于定义和运行多容器 Docker 的应用程序工具 Docker 和 Compose兼容性看下图:          …
=============================================== 2019/4/10_第1次修改                       ccb_warlock =============================================== 将原先docker swarm的文章拆分后,我决定将docker compose的部署内容单独整理成文章,使得部署逻辑更清晰. docker compose是docker容器批量编排的工具,可以通过1个yml…
一.概述 Minio 是一个基于Go语言的对象存储服务.它实现了大部分亚马逊S3云存储服务接口,可以看做是是S3的开源版本,非常适合于存储大容量非结构化的数据,例如图片.视频.日志文件.备份数据和容器/虚拟机镜像等,而一个对象文件可以是任意大小,从几kb到最大5T不等.区别于分布式存储系统,minio的特色在于简单.轻量级,对开发者友好,认为存储应该是一个开发问题而不是一个运维问题. 存储架构 Minio针对不同应用场景也设置了对应的存储架构: 1.单主机,单硬盘模式 该模式下,Minio只在一…
目录 Docker Compose介绍 Docker Compose安装 Docker Compose基本示例 1.基本文件及目录设置 2.创建一个Dockerfile 3.通过docker-compose.yml定义服务 4.通过Docker Compose构建并启动服务 5. 修改Compse文件,添加一个挂载点 7. 更新应用 Docker Compose常用命令说明 Docker Compose文件详解 version services image build command links…
第一篇:把代码连接到容器 第二篇:定制Docker镜像 第三篇:发布镜像 第四篇:容器间的连接 Docker Compose简介 Compose是一个用来定义和运行多容器Docker应用的工具.使用Compose的时候,你可以使用一个YAML文件来配置你应用的服务.然后根据配置,使用一个命令即可创建并运行所有的服务. 使用Compose的时候通常分三步: 使用Dockerfile定义你的环境 在docker-compose.yml文件里定义你的服务,这样就可以让他们在隔离的环境中一起运行了. 运…
0x00 概述 通过之前的介绍,我们已经基本掌握了构建.运行容器的方法,但这还远远不够,由于 Docker 采用轻量级容器的设计,每个容器一般只运行一个软件,而目前绝大多数应用系统都绝不是一个软件所能组成的.虽然我们之前提到了容器间互相连接.交换数据的各种方法,通过这些方法足以搭建起完整的用于应用系统运行的容器群,但是这显然还不够,这个容器群的搭建需要执行太多命令,更重要的是需要考虑太多应用和容器间的依赖关系处理,是一波令人头大的操作.在这一节中,我们就来介绍如何解决这些问题. 0x01 解决容…
环境: CentOS 8.5.2111Docker 20.10.10Docker-Compose 2.1.0 服务: db  redis  web nginx NET Core 6+MySQL 8+Nginx + Redis Kubernetes 又称 K8s ,是集群的 ,单机用 Docker Compose 编排容器 比较方便 cat /etc/system-release #查看版本 sudo yum update dnf -y update #更新系统环境 先安装 Docker Engi…
本文档介绍如何在单机上通过 Docker Compose 快速一键部署一套 TiDB 测试集群.Docker Compose 可以通过一个 YAML 文件定义多个容器的应用服务,然后一键启动或停止. 对于生产环境,不要使用 Docker Compose 进行部署,而应使用 Ansible 部署 TiDB 集群. 一.准备环境 确保你的机器上已安装: Docker(17.06.0 及以上版本) Docker Compose Git 二.快速部署 下载 tidb-docker-compose git…
问题的根本原因是web console 的bug(实际上还是python 对于依赖版本出来不明确) circus 进程docker 镜像 dockerfile FROM python:slim-stretch LABEL AUTHOR="dalongrong" LABEL EMAIL="1141591465@qq.com" WORKDIR /app RUN apt-get update && apt-get install -y --reinstal…
笔者近期在利用的docker搭建一个swarm集群,目前的应用还是入门级的,读者可自行根据自己的需要修改自己需要部署的应用,今天笔者介绍的是一个web应用的swarm集群的搭建.看这篇文章之前,我希望读者把笔者前面两篇文章都认真搭建一遍,因为今天的应用主要是基于前面两篇文章的. 一,理解swarm集群 一个swarm是一组运行docker的机器加入到一个集群,这些机器可以是虚拟的也可以是物理的,这个集群中只有一个swarm管理者,其他的都是worker,它们统称为节点. 一个swarm管理者如何…
Docker图形页面管理工具基本常用的有三种: DOCKER UI,Shipyard,Portainer.对比后发现,Shipyard最强大,其次是Portainer,最后是Docker ui.之前介绍了DOcker的web管理工具DockerUI,下面介绍下Docker的另一个web界面管理工具Shipyard的使用.Shipyard(github)是建立在docker集群管理工具Citadel之上的可以管理容器.主机等资源的web图形化工具,包括core和extension两个版本,core…
一.安装Tomcat 1.查找Docker Hub上的tomcat镜像 docker search tomcat 2.拉取官方的镜像 docker pull tomcat 等待下载完毕,需要一些时间. 3.查看docker所有的镜像 docker images 4.启动tomcat镜像 注:前者是外围访问端口:后者是容器内部端口 docker run -d -p 8080:8080 tomcat 注:前者是外围访问端口:后者是容器内部端口 如下命令可后台启动tomcat -d: 后台运行容器,并…
目录 一,安装宝塔面板(V 6.8) 二,使用宝塔安装 Docker,配置阿里云容器服务 三,安装 Rancher (Server) 四,管理 Rancher.添加集群 五,添加 Rancher 应用.服务,与 Nginx 六,ASP.NET Core 应用部署 七,相关文章推荐 前言: 本文使用 Centos 7.x 进行操作,Rancher 官方推荐使用 Ubuntu. Docker 对内核要求 大于 3.10,你可以使用 uname -r 检测系统内容版本. 通过 Rancher,可以很方…
一.docker简介 1.docker定义:docker是一个用来装应用的容器,就像杯子可以装水,笔筒可以装笔,书包可以放书一样.你可以把“Hello World!”放到docker中,也可以把网站放到docker中,你可以把任何你想到的程序放到docker中. 2.docker思想: (1)集装箱 (2)标准化 (运输方式.存储方式.API接口) 运输方式(docker鲸鱼负责运输) 存储方式(不用关心存在哪,存在哪个盘) API接口的标准化:Docker提供了一系列的RESTFUL API接…
一.Docker部署web项目-jar包 ①搜索mysql镜像 docker search mysql ②拉取镜像至本地仓库(本文选取的mysql镜像5.7版本) docker pull mysql/mysql-server:5.7 查看拉取的镜像并记录id docker images  ③在/usr/local/webapp目录下准备jdk linux压缩包及maven生成的jar包 解压jdk压缩包 cd /usr/local/webapp tar -zxvf jdk-8u191-linux…