docker搭建memcached的详细步骤

目录

搭建步骤

worker登录机器

新建文件夹

下载magent-0.5.tar.gz并安装

创建Dockerfile并构建镜像

构建镜像magent:v1

pull memcached镜像

手动部署memcached

测试验证memcached

Magent 是一款开源的 Memcached 代理服务器软件,使用它可以搭建高可用性的集群应用的 Memcached 服务 ,备份 Memcached 数据,尽管 Memcached 服务挂掉,前端也能获取到数据,客户端先连到 Magent 代理服务器 ,然后Magent 代理服务器 在可以连接多台 Memcached 服务器,然后可以进行数据的保存和备份数据。这样数据就不会丢失,保存了数据完整性。这篇文章给大家介绍docker搭建memcached的步骤。

搭建步骤 worker登录机器 新建文件夹 mkdir memcache cd memcache  mkdir magent cd magent  下载magent-0.5.tar.gz并安装

将文件传送至服务器上

tar -zxvf magent-0.5.tar.gz 

root登录机器

执行/sbin/ldconfig

sed -i "s#LIBS = -levent#LIBS = -levent -lm#g" Makefile

vi magent.c,将以下内容添加在magent.c开头处

#ifndef SSIZE_MAX #define SSIZE_MAX 32767 #endif

返回上级目录 cd..

创建Dockerfile并构建镜像

vimDockerfile,将以下内容录入Dockerfile中。

FROM centos:7 ADD magent /tmp/magent RUN yum install -y gcc make libevent-devel.x86_64 && yum clean all && cd /tmp/magent/ && /sbin/ldconfig && make && cp magent /usr/bin/ CMD magent -u root -l 0.0.0.0 -p 12000 -s 服务器地址:11211 -b 服务器地址:11211

注:FROM centos:7 从默认镜像源拉取镜像,非常非常非常慢!如果公司有镜像,可通过本地pull镜像,push到公司私有镜像源,然后再将该镜像源改为公司私有镜像源。操作如下:

本地docker pullcentos:7.2.1511

本地 docker tagcentos:7.2.1511docker2.gs.com:5000/app-open/centos:7.2.1511

服务器然后修改Dockerfile中的FROM centos:7 为FROMdocker2.gs.com:5000/app-open/centos:7.2.1511

构建镜像magent:v1 docker build -t magent:v1 -f ./Dockerfile .  docker tag magent:v1 docker2.gs.com:5000/app-open/magent:v1 docker images 确认该镜像存在 即:docker2.gs.com:5000/app-open/magent                  v1                  4c750848163d        3 minutes ago       289.4 MB

提交

docker push docker2.gs.com:5000/app-open/magent:v1 pull memcached镜像

本地pull,push到公司私有镜像源,服务器更新magent.yml 文件,pullmemcached

本地

docker pull memcached docker images docker tag memcached docker2.gs.com:5000/app-open/memcached docker push docker2.gs.com:5000/app-open/memcached

如果docker 版本号大于1.13 则在服务器vimmagent.yml,将以下内容录入后保存。并执行docker stack deploy -c magent.yml magent进行部署。

version: '3.2' services:         magent:                 image: docker2.gs.com:5000/app-open/magent:v1                 ports:                   - '12001:12000'                 command: 'magent -u root -D -v -l 0.0.0.0 -p 12000 -s 服务器地址:12002 -b 服务器地址:12003'         memcached1:                 image: docker2.gs.com:5000/app-open/memcached                 ports:                   - '12002:11211'         memcached2:                 image: docker2.gs.com:5000/app-open/memcached                 ports:                   - '12003:11211'

执行:

Creating network magent_magent Creating service magent_magent Creating service magent_memcached1 Creating service magent_memcached2

测试验证:telnet服务器地址12001,telnet服务器地址12002,telnet服务器地址12003

但是本次搭建时,服务器上的docker是1.10,无法执行docker stack命令,因此需要手动启动。

手动部署memcached

首先,更改Dockerfile,删除CMD内容。

FROM docker2.gs.com:5000/app-open/centos:7.2.1511 ADD magent /tmp/magent RUN yum install -y gcc make libevent-devel.x86_64 && yum clean all && cd /tmp/magent/ && /sbin/ldconfig && make && cp magent /usr/bin/ # docker 1.13及以上使用该命令 # CMD magent -u root -l 0.0.0.0 -p 12000 -s 服务器地址:11211 -b 服务器地址:11211

然后手动部署memcached

docker run -d -p 12001:11211 --name memcached1 docker2.gs.com:5000/app-open/memcached docker run -d -p 12002:11211 --name memcached2 docker2.gs.com:5000/app-open/memcached docker run -d -p 12003:11211 --name memcached3 docker2.gs.com:5000/app-open/memcached 测试验证memcached

telnet服务器地址12001,telnet服务器地址12002,telnet服务器地址12003

到此这篇关于docker搭建memcached的文章就介绍到这了,更多相关docker搭建memcached内容请搜索易知道(ezd.cc)以前的文章或继续浏览下面的相关文章希望大家以后多多支持易知道(ezd.cc)!

推荐阅读

    聊聊docker下怎么启动容器

    聊聊docker下怎么启动容器,镜像,应用程序,下载,启动,名称,命令,Docker是一种轻量级的虚拟化解决方案,可以将应用和其所有的依赖性封装到一个独立

    如何在linux上安装docker

    如何在linux上安装docker,安装,运行,命令,步骤,用户,版本,随着容器技术的兴起,Docker 已经成为了最为流行的容器引擎。它可以快速构建、部署、运

    如何彻底卸载docker

    如何彻底卸载docker,删除,命令,软件包,文件,卸载,步骤,随着云计算和容器技术的快速发展,Docker已成为现今最流行的容器化应用平台之一。然而,对于

    如何启动docker中的容器

    如何启动docker中的容器,启动,命令,服务,镜像,文件,方法,Docker是一种流行的容器化平台,容器是一种轻量级、可移植的软件包,包含软件应用程序及其

    docker安装的详细步骤

    docker安装的详细步骤,安装,步骤,命令,软件包,系统,应用程序,Docker是一款开源的容器化应用程序,它可以将应用程序及其依赖项打包到一个容器中,从

    怎么给docker换镜像源

    怎么给docker换镜像源,镜像源,镜像,加速器,加速,步骤,命令,随着Docker的普及,越来越多的人开始使用它来构建和部署应用程序。不过,当我们使用Dock

    怎么启动docker

    怎么启动docker,启动,命令,安装,执行,删除,名称,Docker 是一个由 Linux 内核提供的容器化引擎,可以在同一台主机上运行多个容器,这些容器彼此隔离

    docker怎么删除镜像

    docker怎么删除镜像,镜像,删除,命令,系统,执行,名称,Docker是一个用于开发、运行和部署应用程序的开放平台,可以轻松地将应用程序与所依赖的库打

    docker是啥意思

    docker是啥意思,虚拟化,核心,镜像,应用程序,服务器,虚拟机,docker有两种意思:1、指英文单词docker,其中文翻译是“码头工人”;2、指Docker容器,是一

    docker如何正确删除指定容器

    docker如何正确删除指定容器,删除,命令,备份,镜像,数据,运行,随着云计算和虚拟化技术的不断发展,Docker 容器已经成为了应用程序开发和部署的重

    docker怎么在windows上安装

    docker怎么在windows上安装,安装,运行,应用程序,启用,命令,镜像,Docker是一个非常流行的容器化技术,可以在不同的平台上实现应用程序的封装、分

    docker环境怎么进

    docker环境怎么进,镜像,命令,名称,用于,操作,运行,Docker是一种容器化技术,方便开发者进行应用程序的部署和管理。Docker环境是在操作系统上的一

    docker是一个软件吗

    docker是一个软件吗,虚拟化,虚拟机,运行,平台,开发者,用于,docker是一个软件,是一个运行与linux和windows上的软件,用于创建、管理和编排容器;dock