1. 部署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

    外网端口访问流程:

  2. 部署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 #可以发现已经正常了
  3. 部署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
  4. 可视化面板安装(用着玩的)

    • 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——部署常用镜像的更多相关文章

  1. 使用 docker 部署常用的开发环境

    使用 docker 部署常用的开发环境 Intro 使用 docker,很多环境可以借助 docker 去部署,没必要所有的环境都在本地安装,十分方便. 前段时间电脑之前返厂修了,回来之后所有的软件都 ...

  2. 使用docker 部署rabbitmq 镜像

    1.使用带有web管理功能 sudo docker pull rabbitmq:management 2.运行镜像文件创建容器 sudo docker run -d --name rabbitmq - ...

  3. docker之常用命令、自定制镜像、公(私)仓库的上传和下载

    一.docker命令 1.参数和命令汇总 1. 参数 Options: --config=~/.docker Location of client config files #客户端配置文件的位置 - ...

  4. 构建微服务开发环境4————安装Docker及下载常用镜像

    [内容指引] 下载Docker: Mac下安装Docker: Windows下安装Docker; 下载常用docker镜像. 一.下载Docker 1.Mac适用Docker下载地址:https:// ...

  5. Docker常用镜像

    Docker,具有快捷方便的特性,机器上不需要安装软件和进行各种配置,拉取镜像,一行命令即可启动服务,不使用时,一行命令关闭容器即可,快捷方便,干净.利索.建议将本地的redis.mysql.kafk ...

  6. Docker安装Tomcat镜像并部署web项目

    一.安装Tomcat 1.查找Docker Hub上的tomcat镜像 docker search tomcat 2.拉取官方的镜像 docker pull tomcat 等待下载完毕,需要一些时间. ...

  7. 在docker中部署centos7镜像

    本篇文章参考自: https://www.cnblogs.com/linjj/p/5606911.html https://blog.csdn.net/u012767761/article/detai ...

  8. 开发常用镜像资源替换为国内开源镜像(yum,compose,maven,docker,android sdk,npm,国内开源镜像汇总)

    一.国内开源镜像站点汇总 阿里云开源镜像站 (http://mirrors.aliyun.com/)网易开源镜像站 (http://mirrors.163.com/)中国科学技术大学开源镜像站 (ht ...

  9. docker 部署disconf 以及将其做成镜像

    1.需要一台服务器(阿里云,腾讯云.实体服务器都行,本次是以实体服务器为依照做的) 2.安装docker   https://www.cnblogs.com/shijunjie/p/10436293. ...

随机推荐

  1. Selenium对应版本

    下面是谷歌浏览器与chromedriver的版本对应关系,供参考: ChromeDriver v2.45 (2018-12-10)----------Supports Chrome v70-72Chr ...

  2. 通过C#在控制台输出各种图形文字

    这不是要准备公司年会了嘛 每个部门抓壮丁,必须安排至少一个节目 想着上去唱首歌算了,被毙,没有部门特色 妈蛋,唱歌没特色,那隔壁在前线工作的部门要表演个啥,抄表? 冥思苦想之下,给节目加了点部门特色, ...

  3. .NET 云原生架构师训练营(权限系统 代码实现 EntityAccess)--学习笔记

    目录 开发任务 代码实现 开发任务 DotNetNB.Security.Core:定义 core,models,Istore:实现 default memory store DotNetNB.Secu ...

  4. Solution -「NOI.AC 省选膜你赛」array

    题目 题意简述   维护一个长度为 \(n\) 的序列 \(\{a_n\}\),并给出 \(q\) 个操作: 将下标为 \(x\) 的数修改为 \(y\). 给定 \(l,r,k\),求最大的 \(m ...

  5. Vue.js——学习笔记

    Vue-自学笔记 Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架.与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用.Vue 的核心库只关注视图层,不仅 ...

  6. k8s功能、各组件介绍以及pod创建流程

    一.什么是Kubernetes Kubernetes(k跟s中间隔了8个字母又称k8s) 是谷歌开源的容器集群管理系统,是 Google 多年大规模容器管理技术Borg 的开源版本,主要功能包括: 基 ...

  7. 微信小程序蓝牙开发

    微信小程序蓝牙控制方案: 蓝牙模块如何快速改名并绑定用户手机?这样即使多台蓝牙设备在同一个地方使用也可以互不干扰,燧星科技给出解决方案. 长按控制板5秒进入待绑定下状态,点击"添加蓝牙设备& ...

  8. 自助BI工具:Tableau和Smartbi的对比(下)

    上一篇我们已经将Tableau和Smartbi的自助功能分析了一部分,本文已3个重要的因素进行对比.分别从数据处理.数据可视化以及性价比方面进行分析.我们一起来看看这两个平台是各方面怎么样,帮助大家挑 ...

  9. WPF 开发,优化 AvalonEdit 显示单行超长文本的性能。

    路遥工具箱内置了一个名为"JSON 格式化"的功能.通过该功能可以将 JSON 字符串进行美化和简化(设置缩进和取消缩进). 该功能上线后收到很多客户的反馈:大部分经由网络传输的J ...

  10. 企业环境下用脚本设置ubuntu防火墙

    ubuntu防火墙设置 初始状态下直接设置即可,尽量不要尝试 重装 iptables 以及ufw,很容易导致 防火墙崩掉,最后可能只能重装系统. 配置脚本 firewall.sh #/bin/bash ...