Docker - 安装常用服务

news2024/10/7 6:44:15

Docker - 安装常用服务

防火墙

对外开放访问,需要开放指定的端口提供对外访问

# 防火墙状态
systemctl status firewalld
# 开启防火墙
systemctl start firewalld
# 关闭防火墙
systemctl stop firewalld

# 开放端口
firewall-cmd --zone=public --add-port=10002/tcp --permanent

# 命令含义:
–zone #作用域
–add-port=80/tcp #添加端口,格式为:端口/通讯协议
–permanent #永久生效,没有此参数重启后失效( —permanent放在前面与后面都行)

# 重启防火墙
firewall-cmd --reload

# 验证修改是否生效
firewall-cmd --zone= public --query-port=10002/tcp

# 移除指定端口
firewall-cmd --permanent --remove-port=123/tcp

# 查看已开放的端口
firewall-cmd --zone=public --list-ports

Nginx

  1. 搜索镜像 Search 【建议去网页搜索】
  2. 下载镜像 pull
# 运行 nginx 容器
[root@iZ2zeg7mctvft5renx1qvbZ home]# docker images
REPOSITORY   TAG       IMAGE ID       CREATED       SIZE
nginx        latest    c20060033e06   8 days ago    187MB
centos       latest    5d0da3dc9764   2 years ago   231MB
[root@iZ2zeg7mctvft5renx1qvbZ home]# docker run -d --name nginx-docker -p 80:80 nginx
97721fc83a19f5907d0bbfe47d5fd898285fe7aac1146f952a77b7dd20cd2d63
[root@iZ2zeg7mctvft5renx1qvbZ home]# curl localhost:80
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
<style>
html { color-scheme: light dark; }
body { width: 35em; margin: 0 auto;
font-family: Tahoma, Verdana, Arial, sans-serif; }
</style>
</head>
<body>
<h1>Welcome to nginx!</h1>
<p>If you see this page, the nginx web server is successfully installed and
working. Further configuration is required.</p>

<p>For online documentation and support please refer to
<a href="http://nginx.org/">nginx.org</a>.<br/>
Commercial support is available at
<a href="http://nginx.com/">nginx.com</a>.</p>

<p><em>Thank you for using nginx.</em></p>
</body>
</html>

# 进入 nginx
[root@iZ2zeg7mctvft5renx1qvbZ home]# docker exec -it nginx-docker /bin/bash
root@97721fc83a19:/# whereis nginx
nginx: /usr/sbin/nginx /usr/lib/nginx /etc/nginx /usr/share/nginx
root@97721fc83a19:/# cd /etc/nginx/
root@97721fc83a19:/etc/nginx# ls
conf.d	fastcgi_params	mime.types  modules  nginx.conf  scgi_params  uwsgi_params

端口暴露的概念

使用阿里云ECS需要配置安全组入方向

在这里插入图片描述

Tomcat

# 官方使用
docker run -it --rm tomcat:9.0

# 我们之前的启动都是后台,停止了容器之后,容器还是可以查到 docker run -it --rm 一般用来测试,用完就删除

# 下载在启动
docker pull tomcat

# 启动运行
[root@iZ2zeg7mctvft5renx1qvbZ home]# docker run -d -p 8080:8080 tomcat
889e4b97acb2004fa98d8e2ec77f4ccca670fabeac3feb4a5d057bd770b724a7

# 进入容器
[root@iZ2zeg7mctvft5renx1qvbZ home]# docker ps
CONTAINER ID   IMAGE     COMMAND             CREATED         STATUS         PORTS                                       NAMES
889e4b97acb2   tomcat    "catalina.sh run"   6 minutes ago   Up 6 minutes   0.0.0.0:8081->8080/tcp, :::8081->8080/tcp   lucid_matsumoto
[root@iZ2zeg7mctvft5renx1qvbZ home]# docker exec -it 889e4b97acb2  /bin/bash
root@889e4b97acb2:/usr/local/tomcat# ls -a
.  ..  bin  BUILDING.txt  conf  CONTRIBUTING.md  lib  LICENSE  logs  native-jni-lib  NOTICE  README.md  RELEASE-NOTES  RUNNING.txt  temp  webapps  webapps.dist  work
root@889e4b97acb2:/usr/local/tomcat# ls -al
total 128
drwxr-xr-x 1 root root    30 Oct 31 03:36 .
drwxr-xr-x 1 root root    20 Oct 31 03:34 ..
drwxr-xr-x 2 root root  4096 Oct 31 03:36 bin
-rw-r--r-- 1 root root 20122 Oct 11 23:38 BUILDING.txt
drwxr-xr-x 1 root root    22 Nov  9 05:43 conf
-rw-r--r-- 1 root root  6210 Oct 11 23:38 CONTRIBUTING.md
drwxr-xr-x 2 root root  4096 Oct 31 03:36 lib
-rw-r--r-- 1 root root 60393 Oct 11 23:38 LICENSE
drwxrwxrwt 1 root root    80 Nov  9 05:43 logs
drwxr-xr-x 2 root root   158 Oct 31 03:36 native-jni-lib
-rw-r--r-- 1 root root  2333 Oct 11 23:38 NOTICE
-rw-r--r-- 1 root root  3398 Oct 11 23:38 README.md
-rw-r--r-- 1 root root  6776 Oct 11 23:38 RELEASE-NOTES
-rw-r--r-- 1 root root 16076 Oct 11 23:38 RUNNING.txt
drwxrwxrwt 2 root root    30 Oct 31 03:36 temp
drwxr-xr-x 2 root root     6 Oct 31 03:36 webapps
drwxr-xr-x 7 root root    81 Oct 11 23:38 webapps.dist
drwxrwxrwt 2 root root     6 Oct 11 23:38 work

# 将 webapps.dist 拷贝到 webapps 下使用
root@889e4b97acb2:/usr/local/tomcat# ls -a
.  ..  bin  BUILDING.txt  conf  CONTRIBUTING.md  lib  LICENSE  logs  native-jni-lib  NOTICE  README.md  RELEASE-NOTES  RUNNING.txt  temp  webapps  webapps.dist  work
root@889e4b97acb2:/usr/local/tomcat# cp -r webapps.dist/* webapps/
root@889e4b97acb2:/usr/local/tomcat# cd webapps
root@889e4b97acb2:/usr/local/tomcat/webapps# ls
docs  examples  host-manager  manager  ROOT
root@889e4b97acb2:/usr/local/tomcat/webapps# ls -a
.  ..  docs  examples  host-manager  manager  ROOT

ES + kibana

# ES 暴露端口多
# ES 十分耗内存
# ES 的数据一般需要放置到安全目录!挂载
# --net somenetwork ? 网络配置

# 启动 elasticsearch
# 命令 【如果是内存配置较低不建议直接使用,参考下面的添加内存使用限制大小的命令启动】
docker run -d --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:7.6.2

[root@iZ2zeg7mctvft5renx1qvbZ ~]# docker run -d --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:7.6.2
Unable to find image 'elasticsearch:7.6.2' locally
7.6.2: Pulling from library/elasticsearch
ab5ef0e58194: Pull complete 
c4d1ca5c8a25: Pull complete 
941a3cc8e7b8: Pull complete 
43ec483d9618: Pull complete 
c486fd200684: Pull complete 
1b960df074b2: Pull complete 
1719d48d6823: Pull complete 
Digest: sha256:1b09dbd93085a1e7bca34830e77d2981521a7210e11f11eda997add1c12711fa
Status: Downloaded newer image for elasticsearch:7.6.2
7331b21d4c7bda10271d8ff769b7580e6d53166c63f97ec7509b92ed172207e7


# elasticsearch 本身是非常占用内存的,通过 docker stats 查看内存占用【这里使用命令时,内存占用过大,命令结果加载不出来。】
[root@iZ2zeg7mctvft5renx1qvbZ ~]# docker stats

# 如果启动了,关闭后增加内存的限制,修改配置文件 -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

[root@iZ2zeg7mctvft5renx1qvbZ ~]# 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
26d606f02c30a3643f39c8b2795c9e7872766f25e4f4d9c150f9e6a1ad55b0ed
[root@iZ2zeg7mctvft5renx1qvbZ ~]# docker stats
CONTAINER ID   NAME            CPU %     MEM USAGE / LIMIT     MEM %     NET I/O     BLOCK I/O    PIDS
26d606f02c30   elasticsearch   1.55%     232.2MiB / 1.678GiB   13.51%    962B / 0B   120MB / 0B   19

可视化

  • portainer (先用这个)

    Docker图形化界面管理工具!提供一个后台面板供我们操作!

# 命令
docker run -d -p 8080:9000 \
--restart=always -v /var/run/docker.sock:/var/run/docker.sock --privileged=true portainer/portainer


[root@iZ2zeg7mctvft5renx1qvbZ ~]# docker run -d -p 8080:9000 \
> --restart=always -v /var/run/docker.sock:/var/run/docker.sock --privileged=true portainer/portainer
Unable to find image 'portainer/portainer:latest' locally
latest: Pulling from portainer/portainer
772227786281: Pull complete 
96fd13befc87: Pull complete 
0bad1d247b5b: Pull complete 
b5d1b01b1d39: Pull complete 
Digest: sha256:47b064434edf437badf7337e516e07f64477485c8ecc663ddabbe824b20c672d
Status: Downloaded newer image for portainer/portainer:latest
9ef7881ea7b7e59b949d5da57cebcd5da6d7eb282fccb0ce6be838b0f19ad75f

​ 访问测试:

在这里插入图片描述

在这里插入图片描述

  • Rancher (CI/CD再用)

    Rancher是一个开源的企业级容器管理平台。Rancher提供了在生产环境中使用的管理Docker和Kubernetes的全栈化容器部署与管理平台,简单的说就是可以用rancher来管理docker和kubernetes集群,比如管理主机,容器的启动、停止和删除等。

说明:摘抄B站 “狂神说” 视频

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1191339.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【React入门实战】实现Todo代办

文章目录 效果功能-状态管理相关接口定义相关方法定义 UIinput输入框&#xff1a;回车添加todo标题列表列表项Main 总体代码 非常简单入门的react-todo练习&#xff0c;代码写的很小白。 效果 技术栈&#xff1a;react-typeScript 数据分为代办Todo和已办完Done&#xff0c;可…

C#,数值计算——函数计算,Dfridr的计算方法与源程序

1 文本格式 using System; namespace Legalsoft.Truffer { /// <summary> /// 通过Ridders的多项式外推方法返回函数func在点x处的导数。 /// 输入值h作为估计的初始步长&#xff1b;它不需要很小&#xff0c;而是应为x上的增量&#xff0c; /// 在此增…

springboot,spring框架返回204 status code的时候,会吞掉返回值

背景 发现有个有意思的现象&#xff0c;就是当你的接口返回204的 HTTP status code 的时候&#xff0c;会自动把 response body 吃掉&#xff0c;即使代码里是有返回的。例如 &#xff08;其实204本身就是NO_CONTENT的意思&#xff0c;不过我是真没想到真干掉了返回&#xff0…

Spring6学习笔记01

一、课程简介 Spring框架是一款极其优秀的轻量级开源框架&#xff0c;为了解决企业应用开发的复杂性而出现。Spring框架的用途不仅仅限于服务器端的开发&#xff0c;从简单性、可测试性和松耦合性角度而言&#xff0c;绝大部分Java应用都可以从Spring中受益。Spring框架凭借其…

Linux Hadoop平台伪分布式安装

Linux Hadoop 伪分布式安装 1. JDK2. Hadoop3. MysqlHive3.1 Mysql8安装3.2 Hive安装 4. Spark4.1 Maven安装4.2 Scala安装4.3 Spark编译并安装 5. Zookeeper6. HBase 版本概要&#xff1a; jdk&#xff1a; jdk-8u391-linux-x64.tar.gzhadoop&#xff1a;hadoop-3.3.1.tar.gzh…

JVM在线分析-解决问题的工具一(jinfo,jmap,jstack)

1. jinfo (base) PS C:\Users\zishi\Desktop> jinfo Usage:jinfo <option> <pid>(to connect to a running process)where <option> is one of:-flag <name> to print the value of the named VM flag #输出对应名称的参数-flag [|-]<n…

v-calendar 日历组件使用自定义提示内容

目录 0.介绍 1.安装v-calendar 2.页面使用 3.使用插槽实现待办数量的标记 0.介绍 最近项目中用到了日历插件&#xff0c;需要统计每天的任务数量&#xff0c;类似elementui的badge组件&#xff0c;待办任务数量 大概最后的效果如下图所示&#xff0c;右上角把代办任务数量…

php 二分查询算法实现

原理&#xff1a;二分查找算法&#xff08;Binary Search&#xff09;是一种针对有序数组的查找算法。它的原理是通过将查找区间逐渐缩小一半来快速定位要查找的目标值。 应用场景&#xff1a; 数据库或文件系统索引查找&#xff1a;在数据库或文件系统中&#xff0c;索引是有…

基于springboot 停车场管理系统-计算机毕设 附源码 39315

spring boot停车场管理系统的设计与实现 摘 要 科技进步的飞速发展引起人们日常生活的巨大变化&#xff0c;电子信息技术的飞速发展使得电子信息技术的各个领域的应用水平得到普及和应用。信息时代的到来已成为不可阻挡的时尚潮流&#xff0c;人类发展的历史正进入一个新时代。…

【C++数据结构】顺序存储结构的抽象实现

文章目录 前言一、目标二、SeqList实现要点三、SeqList函数实现3.1 get函数3.2 set函数3.3 insert函数带2个参数的insert带一个参数的insert 3.4 remove函数3.5 clear函数3.6 下标运算符重载函数无const版本const版本 3.7 length函数 总结 前言 当谈到C数据结构时&#xff0c;…

97 只出现一次的数字

只出现一次的数字 题解1 异或的应用&#xff08;判断出现次数是奇偶&#xff09; 给你一个 非空 整数数组 nums &#xff0c;除了某个元素只出现一次以外&#xff0c;其余每个元素均出现两次。找出那个只出现了一次的元素。 你必须设计并实现线性时间复杂度的算法来解决此问题…

PCIe寄存器之二

关键字索引&#xff1a; CAP_PM 对应&#xff1a;Capabilities: [c0] Power Management CAP_MSI 对应&#xff1a;Capabilities: [c8] MSI CAP_MSIX对应&#xff1a;Capabilities: [e0] MSI-X CAP_EXP 对应&#xff1a;Capabilities: [70] Express (v2) Endpoint 以上 [] 内的…

开设自己的网站系类03安装数据库(centos版)

编者买了一个服务器打算自己构建一个网站&#xff0c;用于记录生活。网站大概算是一个个人博客吧。记录创建过程的一些步骤。 前面已经讲过配置服务器的程序运行环境 网站运行还需要数据库&#xff0c;本篇文章则是安装数据库的内容。 卸载mariadb 查看是否有安装 mariadb&…

【Python】数据分析案例:世界杯数据可视化

文章目录 前期数据准备导入数据 分析&#xff1a;世界杯中各队赢得的比赛数分析&#xff1a;先打或后打的比赛获胜次数分析&#xff1a;世界杯中的抛硬币决策分析&#xff1a;2022年T20世界杯的最高得分者分析&#xff1a;世界杯比赛最佳球员奖分析&#xff1a;最适合先击球或追…

【C语言基础】近期所学到的函数以及关键字(函数memset、scanf、关键字staric、 inline、volatile)

&#x1f4e2;&#xff1a;如果你也对机器人、人工智能感兴趣&#xff0c;看来我们志同道合✨ &#x1f4e2;&#xff1a;不妨浏览一下我的博客主页【https://blog.csdn.net/weixin_51244852】 &#x1f4e2;&#xff1a;文章若有幸对你有帮助&#xff0c;可点赞 &#x1f44d;…

python核心编程速记【笔记迁移】

笔记速记 1.python非常注重缩进&#xff0c;这是它的显著特征之一。 2.import相当于头文件声明模块。 3.利用type函数 type(a)可以查看当前变量类型。 isinstance可以比较两个数据类型并返回一个布尔值。 4.这里面的可直接使用and和or作为一个函数 5.python的算法比较贴合…

如何改善食品饮料包装生产企业的OEE?

食品饮料这类商品在我们的日常生活中十分常见&#xff0c;它们存在于各类商店、超市或路边的小店里。而食品饮料的包装是吸引人们购买该产品的一个重要因素。为了在这个市场中脱颖而出并提高盈利能力&#xff0c;企业需要关注设备的综合效率&#xff0c;即OEE&#xff08;Overa…

SpringBoot测试类启动web环境-上篇

1.坐标修改 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency> 2.测试类测试 说明&#xff1a;SpringBootTest()中的webEnvironment值的说明&#xff1b; 2.1不启…

vue项目js原生属性IntersectionObserver实现图片懒加载

vue项目js原生属性IntersectionObserver实现图片懒加载 IntersectionObserver 使用js原生属性IntersectionObserver实现观察img元素是否处于游览器视口中 懒加载原理&#xff1a;给img设置一个默认url图片&#xff0c;观察图片处于视口内以后&#xff0c;动态改变img的url为自己…

机组 CPU

控制器&#xff1a;协调并控制计算机各部件执行程序的指令序列&#xff0c;其基本功能是取指令、分析指令和执行指令 功能 CPU 必须具有控制程序的顺序执行&#xff08;指令控制&#xff09;、产生完成每条指令所需的控制命令&#xff08;操作控制&#xff09;、对各种操作加…