Docker——部署常用镜像
部署nginx:暴露端口
#下载nginx
docker pull nginx #运行nginx
docker run -d --name nginx2 -p 8081:80 nginx
-d #后台挂起
--name #对当前运行的容器起名
-P 443:8080 #主机访问端口:内部容器端口.注意前面的主机端口不能被占用,后面的容器端口必须为80,因为这是nginx默认运行的端口 #测试
curl localhost:8081
#相当于直接在服务器上访问自己的8081端口,得到的html
外网端口访问流程:

部署Tomcat:官方测试以及进入容器查看
#官方使用:安装并直接运行,但是在运行完成后会将对应的容器删除,多用于测试
$ docker run -it --rm tomcat:9.0
-it #交互
--rm #测试使用后直接删除容器 #正常的安装使用
#安装最新版
docker pull tomcat #运行
docker run -d -p 8081:8080 d5eef28cf41d #注意Tomcat的默认端口是8080,由于本地有两个Tomcat镜像,这里用id启动容器 #测试
[root@iZwz908j8pbqd86doyrez5Z init.d]# curl localhost:8081
<!doctype html><html lang="en"><head><title>HTTP Status 404 – Not Found</title><style type="text/css">body {font-family:Tahoma,Arial,sans-serif;} h1, h2, h3, b {color:white;background-color:#525D76;} h1 {font-size:22px;} h2 {font-size:16px;} h3 {font-size:14px;} p {font-size:12px;} a {color:black;} .line {height:1px;background-color:#525D76;border:none;}</style></head><body><h1>HTTP Status 404 – Not Found</h1><hr class="line" /><p><b>Type</b> Status Report</p><p><b>Description</b> The origin server did not find a current representation for the target resource or is not willing to disclose that one exists.</p><hr class="line" /><h3>Apache Tomcat/9.0.37</h3></body></html> #可以看到这里报的是Tomcat的错误,说明Tomcat启动成功了,但是没有出现正常的安装成功的页面.让我们进入容器看看 #进入容器:
[root@iZwz908j8pbqd86doyrez5Z init.d]# docker exec -it fc7c340046da /bin/bash
root@fc7c340046da:/usr/local/tomcat# ls
BUILDING.txt LICENSE README.md RUNNING.txt conf logs temp webapps.dist
CONTRIBUTING.md NOTICE RELEASE-NOTES bin lib native-jni-lib webapps work
root@fc7c340046da:/usr/local/tomcat# cd webapps
root@fc7c340046da:/usr/local/tomcat/webapps# ls
root@fc7c340046da:/usr/local/tomcat/webapps# #可以看到,原来应该放web页面的webapp目录下是空的 #1.linux命令少了
#2.没有webapps
#原因:阿里云镜像默认是最小的镜像,所有不必要的都剔除了
#保证最小可运行的环境
#解决方法:虽然webapps下面没有东西了,但是webapps.dist文件输出目录下的东西是齐全的,我们只要将webapp.dist目录拷贝到webapp目录下
root@fc7c340046da:/usr/local/tomcat/webapps# cd /usr/local/tomcat
root@fc7c340046da:/usr/local/tomcat# cd webapps.dist
root@fc7c340046da:/usr/local/tomcat/webapps.dist# ls
ROOT docs examples host-manager manager
root@fc7c340046da:/usr/local/tomcat/webapps.dist# cd /usr/local/tomcat
root@fc7c340046da:/usr/local/tomcat# cp -r webapps.dist/* webapps
root@fc7c340046da:/usr/local/tomcat# cd webapps.dist
root@fc7c340046da:/usr/local/tomcat/webapps.dist# ls
ROOT docs examples host-manager manager #测试
curl localhost:8081 #可以发现已经正常了
部署es+kibana(受内存限制,这里直接部署了限制内存方式运行的容器):如何查看容器状态,以及如何修改相关的配置
# es 暴露的端口很多
# es 十分的耗内存
# es 的数据一般需要放置到安全目录! 挂载
# --net somenetwork ? 网络配置 #官方部署指令
$ docker run -d --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:7.6.2 docker stats #查看 cpu状态 #解决es过于消耗内存的问题:修改配置文件 -e 环境配置修改
$ docker run -d --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms64m-Xmx512m" elasticsearch:7.6.2 #注意带上版本号,否则docker会在本地直接找最新的版本
-e ES_JAVA_OPTS="-Xms64m -Xmx512m" #内存消耗只允许在64m-512m之间 #测试
curl localhost:9200
可视化面板安装(用着玩的)
portainer
docker run -d -p 8088:9000 \ #8088为外部访问地址,9000是内部访问地址
--restart=always -v /var/run/docker.sock:/var/run/docker.sock --privileged=true portainer/portainer
登陆测试即可
Rancher(CI/CD:持续集成/持续部署)
Docker——部署常用镜像的更多相关文章
- 使用 docker 部署常用的开发环境
使用 docker 部署常用的开发环境 Intro 使用 docker,很多环境可以借助 docker 去部署,没必要所有的环境都在本地安装,十分方便. 前段时间电脑之前返厂修了,回来之后所有的软件都 ...
- 使用docker 部署rabbitmq 镜像
1.使用带有web管理功能 sudo docker pull rabbitmq:management 2.运行镜像文件创建容器 sudo docker run -d --name rabbitmq - ...
- docker之常用命令、自定制镜像、公(私)仓库的上传和下载
一.docker命令 1.参数和命令汇总 1. 参数 Options: --config=~/.docker Location of client config files #客户端配置文件的位置 - ...
- 构建微服务开发环境4————安装Docker及下载常用镜像
[内容指引] 下载Docker: Mac下安装Docker: Windows下安装Docker; 下载常用docker镜像. 一.下载Docker 1.Mac适用Docker下载地址:https:// ...
- Docker常用镜像
Docker,具有快捷方便的特性,机器上不需要安装软件和进行各种配置,拉取镜像,一行命令即可启动服务,不使用时,一行命令关闭容器即可,快捷方便,干净.利索.建议将本地的redis.mysql.kafk ...
- Docker安装Tomcat镜像并部署web项目
一.安装Tomcat 1.查找Docker Hub上的tomcat镜像 docker search tomcat 2.拉取官方的镜像 docker pull tomcat 等待下载完毕,需要一些时间. ...
- 在docker中部署centos7镜像
本篇文章参考自: https://www.cnblogs.com/linjj/p/5606911.html https://blog.csdn.net/u012767761/article/detai ...
- 开发常用镜像资源替换为国内开源镜像(yum,compose,maven,docker,android sdk,npm,国内开源镜像汇总)
一.国内开源镜像站点汇总 阿里云开源镜像站 (http://mirrors.aliyun.com/)网易开源镜像站 (http://mirrors.163.com/)中国科学技术大学开源镜像站 (ht ...
- docker 部署disconf 以及将其做成镜像
1.需要一台服务器(阿里云,腾讯云.实体服务器都行,本次是以实体服务器为依照做的) 2.安装docker https://www.cnblogs.com/shijunjie/p/10436293. ...
随机推荐
- VUE项目部署到线上生产环境,Loading chunk xxx failed
项目部署到生产环境,路由点击无效,报错 Loading chunk chunk-xxxxx failed.(missing xxxx) 加载失败,错误的路径. 话不多说,直接贴代码: vue.conf ...
- 通过loganalyzer展示数据库中的日志
一.安装mysql # yum -y install mariadb-server # systemctl enable --now mariadb && systemctl stat ...
- JavaWeb中jsp路径斜杆(/)跟没斜杆的路径映射问题
在JavaWeb开发中,只要是写URL地址,那么建议最好以"/"开头,也就是使用绝对路径的方式,那么这个"/"到底代表什么呢?可以用如下的方式来记忆" ...
- Redis和数据库的数据一致性问题
在数据读多写少的情况下作为缓存来使用,恐怕是Redis使用最普遍的场景了.当使用Redis作为缓存的时候,一般流程是这样的. 如果缓存在Redis中存在,即缓存命中,则直接返回数据 如果Redis中没 ...
- suging闲谈-netty 的异步非阻塞IO线程与业务线程分离
前言 surging 对外沉寂了一段时间了,但是作者并没有闲着,而是针对于客户的需要添加了不少功能,也给我带来了不少外快收益, 就比如协议转化,consul 的watcher 机制,JAVA版本,sk ...
- 通讯录管理系统(C++)
前言 本程序采用VS2019开发实现 博主尽可能完善并健壮了程序功能,如有不理想之处,请加以指正,博主会在第一时间修改完善.原创不易,望"推荐","关注",&q ...
- Spring高级特性之三:@Enable*注解的工作原理
Spring Boot中阐述热插拔技术的时候,简单地提及@Enable*注解.随着多种框架的应用及深入了解,@Enable*这个注解在各种框架中应用相当普及. 那么@Enable*注解工作原理是怎么样 ...
- 开源GenICam项目上手-1
GenICam 说明 一个统一的编程规则,这样我们只需要一个应用软件,就可以支持符合标准的不同型号相机,当我们升级相机.更换相机时,不需要编写不同的软件代码. The goal of GenICamT ...
- (待补充)diff 算法解析
今天,学习React的时候,底层提到了 diff算法,顺藤摸瓜, 也发现了VUE也使用了diff算法. mark一下,后续补充 infoq-VUE-diff算法 react-diff算法
- 一文带你解读Spring5源码解析 IOC之开启Bean的加载,以及FactoryBean和BeanFactory的区别。
前言 通过往期的文章我们已经了解了Spring对XML配置文件的解析,将分析的信息组装成BeanDefinition,并将其保存到相应的BeanDefinitionRegistry中,至此Spring ...