使用Docker快速搭建生产环境
Docker安装
CentOS 6.5:
yum install -y docker-io
service docker start
下载镜像
配置使用国内镜像:修改Docker配置文件/etc/default/docker如下
DOCKER_OPTS="--registry-mirror=http://aad0405c.m.daocloud.io"
docker pull redis:3.2.12
docker pull mysql:5.6.41
docker pull centos:7.5.1804
docker pull webcenter/activemq:5.14.3
重新启动,service docker restart
启动
dockerui
用于图形化远程管理镜像和容器,启动后浏览器访问9000端口。
docker run --name='dockerui' -d \
-e="/docker.sock" \
-v /var/run/docker.sock:/docker.sock \
-p 9000:9000 \
abh1nav/dockerui:latest
ActiveMQ
docker run --name='activemq' -d \
-e 'ACTIVEMQ_CONFIG_NAME=amqp-srv1' \
-e 'ACTIVEMQ_CONFIG_DEFAULTACCOUNT=false' \
-e 'ACTIVEMQ_ADMIN_LOGIN=admin' -e 'ACTIVEMQ_ADMIN_PASSWORD=admin' \
-e 'ACTIVEMQ_CONFIG_MINMEMORY=512' -e 'ACTIVEMQ_CONFIG_MAXMEMORY=2048' \
-e 'ACTIVEMQ_CONFIG_SCHEDULERENABLED=true' \
-v /opt/docker-runtime/activemq/data:/data \
-v /opt/docker-runtime/activemq/log:/var/log/activemq \
-p 8161:8161 \
-p 61616:61616 \
-p 61613:61613 \
webcenter/activemq:5.14.3
Redis
docker run --name='redis' -d\
-v /opt/docker-runtime/redis/conf/redis.conf:/usr/local/etc/redis/redis.conf \
-v /opt/docker-runtime/redis/data:/var/lib/redis \
-v /opt/docker-runtime/redis/log:/var/log/redis \
-p 6379:6379 \
redis:3.2.12 \
/usr/local/bin/redis-server /usr/local/etc/redis/redis.conf --appendonly yes
配置文件redis.conf复制到/opt/docker-runtime/redis/conf/目录下
MySQL
docker run --name='mysql' -d \
-e MYSQL_ROOT_PASSWORD=Admin123 \
-e MYSQL_DATABASE=caict \
-e MYSQL_USER=user \
-e MYSQL_PASSWORD=User123 \
-v /opt/docker-runtime/mysql/conf/my.cnf:/etc/mysql/my.cnf \
-v /opt/docker-runtime/mysql/data:/var/lib/mysql \
-v /opt/docker-runtime/mysql/log:/var/log/mysql \
-p 3706:3306 \
mysql:5.6.41
配置文件my.cnf复制到/opt/docker-runtime/mysql/conf/目录下
导入脚本:
docker exec -i mysql mysql -uroot -p"Admin123" caict</root/db.init.sql
Tomcat
制作
- 准备:
下载 apache-tomcat-7.0.90.tar.gz 和 jre-7u67-linux-x64.tar.gz,并解压缩
mkdir tomcatcd tomcattar zxvf apache-tomcat-7.0.90.tar.gz tar zxvf jre-7u67-linux-x64.tar.gz
- 编制Dockerfile
FROM centos:7.5.1804
#创建目录
RUN mkdir -p /opt
#把当前目录下的jdk文件夹添加到镜像
ADD apache-tomcat-7.0.90 /opt/apache-tomcat-7.0.90
ADD jre1.7.0_67 /opt/jre1.7.0_67
RUN localedef -c -f UTF-8 -i zh_CN zh_CN.utf8
ENV LC_ALL zh_CN.utf8
ENV JAVA_HOME /opt/jre1.7.0_67
ENV CATALINA_HOME /opt/apache-tomcat-7.0.90
ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/bin
#暴露8080端口
EXPOSE 8080
#启动时运行tomcat
CMD ["/opt/apache-tomcat-7.0.90/bin/catalina.sh","run"]
- 执行制作
docker build -t sbr/tomcat7:1.1 .
启动
docker run -it --name='tomat' -d \
-v /opt/docker-runtime/tomcat/webapps:/opt/apache-tomcat-7.0.90/webapps \
-v /opt/docker-runtime/tomcat/log:/opt/apache-tomcat-7.0.90/logs \
-v /opt/docker-runtime/tomcat/work:/opt/apache-tomcat-7.0.90/work \
-v /opt/docker-runtime/tomcat/temp:/opt/apache-tomcat-7.0.90/temp \
-p 80:8080 \
sbr/tomcat7:1.1
把war文件复制到/opt/docker-runtime/tomcat/webapps目录下。
使用Docker快速搭建生产环境相关推荐
- 【Mysql】通过 docker 快速搭建 mysql 环境
[Mysql]通过 docker 快速搭建 mysql 环境 1.方式一:查找Docker Hub上的mysql镜像 获取镜像 docker pull mysql:5.6 创建目录 mkdir mys ...
- Docker | Docker 快速搭建 TensorRT 环境(超详细)
文章目录 原创声明 前言 一.什么是 TensorRT 二.搭建 方案一:手工搭建(知其然,知其所以然) 过程 方案一中可能出现的错误 方案二:Dockerfile 一键搭建(爽) 总结 参考 授权须 ...
- docker容器没有apt_使用Docker快速搭建Rails开发环境
引言 Docker with rails 学习 Ruby On Rails 开发的同学经常会遇到因为电脑系统环境不同,同样的程序在自己这边跑起来没问题,给了其他人之后就是各种依赖或者环境问题,尤其是在 ...
- docker mysql 操作_[Docker] Docker 快速搭建本地MySQL开发环境
[Docker] Docker 快速搭建本地MySQL开发环境 关于 Docker 的安装使用本文不再赘述,有兴趣的可以通过官网或是浏览我的专栏文章了解.今天着重给大家介绍下如何利用Docker快速搭 ...
- 五分钟用Docker快速搭建Go开发环境
挺早以前在我写过一篇用 Docker搭建LNMP开发环境的文章:用Docker搭建Laravel开发环境,里面详细介绍了将 nginx. mysql和 php三个容器用 docker-compose编 ...
- 修正《用Docker快速搭建Go开发环境》文章中的一处错误
上周写的文章<五分钟用Docker快速搭建Go开发环境>,文章发出去后有不少阅读量,而且从后台看的数据 60%的人都读完了.今天我自己用下面命令往 容器里的 Go 项目里下载包时发现了一处 ...
- Docker快速搭建Taiga敏捷开发项目管理平台
Taiga.io , Open Source, full featured project management platform for startups and agile developers ...
- Docker快速搭建OpenProject项目管理协作平台
转载来源:https://hub.docker.com/r/openproject/community Docker快速搭建OpenProject项目管理协作平台 Tags信息 openproject ...
- 如何基于Docker快速搭建Elasticsearch集群?
如何基于Docker快速搭建Elasticsearch集群? Elasticsearch 作为一个搜索引擎,我们对它的基本要求就是存储海量数据并且可以在非常短的时间内查询到我们想要的信息.所以第一步 ...
最新文章
- 计算机硬件系统公开课课件,计算机硬件系统的组成(公开课).ppt.ppt
- W-D-S-UART编程
- 【洛谷P4445 【AHOI2018初中组】报名签到】
- redis多服务器共享_【数据库】Redis(二)持久化及事务
- AD 批量修改漫游文件
- Redis windows学习(一)——redis安装和基础使用
- 编译原理last集c语言,编译原理作业集-第七章.doc
- java 文件追加文本_Java追加文件内容的三种方法
- django 获取环境变量_python – django settings.py os.environ.get(“X”)没有获取正确的值...
- 安装系统显示sql服务器未安装,mssqlserver服务未安装怎么办 mssqlserver怎么安装
- 《软件需求最佳实践》——阅读笔记一
- elementui展示多张图片_fabric.js之旅图片
- VALSE学习(十五):网络搜索结构-NAS
- 进程介绍(理论部分)
- PPT转pdf保存动画效果
- 小白教程系列——MultiDesk连接服务器
- 巧谈自动化测试面试技巧,面试中会问到的技术点讲解!
- python处理netcdf_使用Python处理NetCDF格式文件
- 《人工智能实践:Tensorflow笔记》听课笔记22_6.1输入手写数字图片输出识别结果
- GKB字符集转UTF-8
热门文章
- Mac文本操作实用技巧,快速提升你的工作效率!
- FCPX无缝扭曲过渡转场Twirl Transition Pack for Mac
- 酱油和gbt酱油哪个好_酱油不是越贵越好,聪明人才知道的两个选酱油小技巧
- 省选+NOI 第八部分 数论
- oracle 中此处列不允许,oracle-序列 ora-02287 此处不允许序号
- centos7光盘修复 grub_centos7修复grub2
- python第三方模块安装路径_Python第三方Window模块文件的几种安装方法
- Qt文档阅读笔记-官方Form Extractor Example实例解析
- Java获取成员变量构造函数信息
- C/C++ OpenCV图像的线性混合