`
y806839048
  • 浏览: 1118644 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

docker基础部署

阅读更多

 

# Use an official Python runtime as a parent image

FROM python:2.7-slim   基本运行环境镜像

 

# Set the working directory to /app

WORKDIR /app

 

# Copy the current directory contents into the container at /app

COPY . /app

 

# Install any needed packages specified in requirements.txt          运行环境中安装中间件  ,安装之后还需要运行

RUN pip install --trusted-host pypi.python.org -r requirements.txt

 

# Make port 80 available to the world outside this container      开放访问端口

EXPOSE 80

 

# Define environment variable

ENV NAME World

 

# Run app.py when the container launches              部署程序

CMD ["python", "app.py"]

 

 

安装运行好之后可以在次基础上构建新的镜像,之后在其他机器上只要安装了dock,然后运行此镜像即可,启动应用程序,其中的中间件

 

为了生产环境的方便部署,先将构建的镜像上传到docker官方的注册表,生产部署的时候只要从注册地址拉取运行即可,生产环境只要装原生的docker即可

 

 

docker 的swarm还具有nginx的特性,自动负载

 

任何部分例如群,应用程序都可拆除

 

docker 分布集群的时候只能通过一个主节点(集群管理器)发布命令到其他机器节点执行

执行 docker swarm init的为集群管理器

执行 docker swarm join的为工作节点

2377  集群管理端口

2376  虚拟机的端口

 

 

docker-machine ssh myvm2 --远程登录方式1

设置远程登录的另一种方式:(缓存中设置)

docker-machine env myvm1 //定义文件

 

export DOCKER_TLS_VERIFY="1"  //开始编辑文件

export DOCKER_HOST="tcp://192.168.99.100:2376"

export DOCKER_CERT_PATH="/Users/sam/.docker/machine/machines/myvm1"

export DOCKER_MACHINE_NAME="myvm1"

 

# Run this command to configure your shell: //运行文件,在主节点中运行之后,其他工作节点都会执行

# eval $(docker-machine env myvm1)

 

 

部署的时候如果是私有的注册则需要先登录,然后部署

docker login registry.example.com

 

docker stack deploy --with-registry-auth -c docker-compose.yml getstartedlab

 

使用集群部署命令的时候,如果只是一台服务器那么会在这个服务部署多个,如果是读个服务器则会在每个服务器上部署相应数量的服务(自动负载到某个服务上)

负载找服务的是通过对应端口的映射找到对应的应用

 

堆栈就是服务部署的多个节点---在docker的最顶部  docker stack deploy  堆发布

群就是集群

 

docker可以安装可视化管理工具---另外部署这个服务即可,和应用web同级

      我们在requuire中安装了中间之后,还需要类似启动应用web一样启动这个服务   中间件的镜像是公用的,具体使用下载部署即可,数据持久化在本地

 

redis中键是指定数据在物理机上的落地地址,如果没有就会在容器内部创建数据目录,docker容器销毁数据就消失

volumes:

      - "/home/docker/data:/data"

 

placement=[role:manager]   ---指定只运行在集群管理器上

 

 

docker cloud

 

docker ce

通过docker云服务商建立docker节点(类似一个虚拟机一个docker节点),然后通过docker swarm init和docker swarm join 建立集群,

然后等过登录工具登录自己在云上的docker群组,远程执行命令发布自己托管的docker镜像程序,云上设置相应程序中间件的外部端口

 

 

分享到:
评论

相关推荐

    从0到1部署前后分离项目安装docker

    1.从0到1部署前后分离项目安装docker,在liunx系统环境下,包含下载配置,以及常用的docker命令,此教程还是需要有一点docker基础的同学参考的。 1.从0到1部署前后分离项目安装docker,在liunx系统环境下,包含下载...

    Docker基础入门到实战视频教程.rar

    Docker基础入门到实战 网盘文件永久连接 01.Docker基本概念和框架 01.Docker -课程介绍 02.Docker -Docker 简介 03.Docker -Docker 的基本组成 04.Docker -Docker 容器相关技术简 02.Docker的安装和部署 01.Docker...

    Docker环境部署文档

    Docker 环境部署文档 本文档主要介绍了使用 Docker 部署环境的步骤和注意事项。 Docker 环境部署 Docker 是一个开源的容器化平台,可以将应用程序和其依赖项打包到一个容器中,使得应用程序可以在不同的环境中...

    Docker基础入门到实战.zip

    Docker基础入门到实战 01.Docker基本概念和框架 02.Docker的安装和部署 03.Docker容器 04.Docker镜像与仓库(一) 05.Docker客户端和守护进程 06.Docker镜像与仓库(二) 07.Docker容器的网络连接 08.Docker容器的...

    基于hugo的静态导航网站+部署说明(支持docker快速部署).zip

    基于hugo的静态导航网站+部署说明(支持docker快速部署).zip基于hugo的静态导航网站+部署说明(支持docker快速部署).zip基于hugo的静态导航网站+部署说明(支持docker快速部署).zip基于hugo的静态导航网站+部署说明...

    linux环境下基于Docker部署的java项目的实施方案

    步骤包括:选择合适的基础镜像、准备Java应用程序、配置Dockerfile、构建Docker镜像、运行Docker容器、访问Docker容器中的Java应用程序、发布Docker镜像。最佳实践包括:使用最小化的基础镜像、分离JRE和应用程序、...

    Docker部署本地以及集群hadoop.zip

    1. 制作docker基础镜像-01 2. 制作支持ssh的docker镜像-centos7_ssh-01 3. 制作ssh无密码登录的docker镜像-01 4. 构建基于docker的单节点的HDFS集群-01 5. docker容器跨物理节点通信-01 6 跨物理节点构建基于docker...

    docker SWARM 部署教程

    ### Docker Swarm 部署教程知识点详解 ...这些基础知识对于管理和维护 Docker Swarm 集群至关重要。在实际应用中,还可能涉及到服务的部署、网络配置、安全策略等方面的内容,这些将在后续的学习和实践中逐步探索。

    docker基础概念的简化理解

    Docker Registry服务:Docker Registry是Docker的镜像仓库,用于存储和分发Docker镜像。用户可以在此上传自己的镜像或拉取需要的镜像。...Docker Swarm、Kubernetes=等容器编排工具可以帮助用户定义、部署和管理。

    用Docker轻松部署Spring应用:容器化实践指南0基础!!易懂!!.html

    该教程《用Docker轻松部署Spring应用:容器化实践指南》主要介绍了如何使用Docker技术来容器化和部署Spring应用。...通过学习本教程,读者将能够掌握从开发到部署整个流程的容器化技术,为后续的进阶学习打下坚实基础。

    docker零基础入门到简单项目部署.rar

    doker零基础入门,到简单web项目的简单部署... (Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows 机器上,也可以实现虚拟化。...

    Docker基础概念与架构 Docker安装与配置 Docker镜像管理 Docker容器生命周期管理 Docker网络基础

    Docker基础概念与架构 Docker安装与配置 Docker镜像管理 Docker容器生命周期管理 Docker网络基础 Docker数据管理与持久化 Dockerfile进阶 Docker服务与健康检查 DockerCompose入门 DockerCompose网络与服务 Docker在...

    docker-compose redis主从哨兵 redis多节点高可用 redis集群高可用

    这里我们将详细探讨如何利用Docker Compose部署Redis的主从哨兵配置和集群高可用性解决方案。 首先,Docker Compose是一个强大的工具,可以让我们通过YAML文件定义和运行多容器的Docker应用。在这个场景下,我们...

    云原生Docker和K8S 01-Docker基础

    云原生Docker和K8S 01-Docker基础 云原生Docker和K8S 01-Docker基础是 Docker 和 Kubernetes 的基础知识介绍。Docker 是一种容器化技术,允许用户在隔离的环境中运行应用程序,而不需要创建虚拟机。Kubernetes 是一...

    docker1.11.0STATIC部署内容

    在STATIC部署中,Docker二进制文件可以直接在支持的基础系统上运行,而无需额外的配置或依赖。这对于那些对系统稳定性有高要求的环境,如生产服务器或者安全敏感的系统,是一个巨大的福音。此外,STATIC部署也方便在...

    elk的docker-compose配置

    总结,通过Docker Compose部署ELK栈提供了一种便捷的方法,使得在本地或生产环境中快速设置和管理日志分析系统成为可能。这种方法具有可扩展性,易于维护,同时也简化了升级和备份过程。通过理解每个组件的作用以及...

    docker-compose部署基础服务-且容器时间保持一致

    docker-compose部署基础服务-且容器时间保持一致

    利用docker和docker-compose部署单机kafka

    1. **Docker基础** Docker是一种流行的容器化技术,它允许我们将应用程序及其依赖环境打包成独立的可移植容器,确保应用在任何支持Docker的平台上都能一致地运行。 2. **Docker Compose** Docker Compose是一个...

    Gitllab+Jenkins+Docker+Harbor 自动化部署流程

    Gitllab+Jenkins+Docker+Harbor 自动化部署流程 一、 版本控制系统 Gitllab Gitllab 是一个基于 web 的 Git 仓库管理系统,提供了一个强大且灵活的平台来管理 Git 项目。 Gitllab 允许用户创建、管理和共享 Git ...

    docker-ubuntu+zabbix部署

    Docker-Ubuntu+Zabbix 部署详解 Docker-Ubuntu+Zabbix 部署是当前IT行业中非常流行的一种解决方案。...通过遵循本指南,您可以快速部署一个基于 Docker 的 Zabbix 监控系统,以便对您的 IT 基础设施进行监控和管理。

Global site tag (gtag.js) - Google Analytics