IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> Study-04-Docker部署 -> 正文阅读

[系统运维]Study-04-Docker部署

一、Docker 安装 Nginx

1. 搜索镜像 search (在官网搜索,可以看到帮助文档)

2. 下载镜像 pull

docker pull nginx

[root@liustudy ~]# docker images
    REPOSITORY    TAG       IMAGE ID       CREATED         SIZE
    nginx         latest    605c77e624dd   3 months ago    141MB
    hello-world   latest    feb5d9fea6a5   6 months ago    13.3kB
    centos        latest    5d0da3dc9764   6 months ago    231MB
    mysql         8.0.23    cbe8815cbea8   12 months ago   546MB

参数解释:
	-d 后台运行
	--name  给容器命名
	-p	宿主机端口,容器内部端口
[root@liustudy ~]# docker run -d --name nginx01 -p 9000:80 nginx
    ecfd0ee4824caca14b1b6c8cecc43eb2ac41e19cac768cae27a8a3e14b98d7b8[root@liustudy ~]# docker ps
    CONTAINER ID   IMAGE     COMMAND                  CREATED         STATUS         PORTS                  NAMES
    ecfd0ee4824c   nginx     "/docker-entrypoint.…"   7 seconds ago   Up 6 seconds   0.0.0.0:9000->80/tcp   nginx01
[root@liustudy ~]# curl localhost:9000 (从本机访问端口)

3.端口暴露概念
端口暴露4.进入容器

[root@liustudy ~]# docker ps
CONTAINER ID   IMAGE     COMMAND                  CREATED          STATUS          PORTS                  NAMES
ecfd0ee4824c   nginx     "/docker-entrypoint.…"   18 minutes ago   Up 18 minutes   0.0.0.0:9000->80/tcp   nginx01
[root@liustudy ~]# docker exec -it nginx01 /bin/bash
root@ecfd0ee4824c:/# whereis nginx
nginx: /usr/sbin/nginx /usr/lib/nginx /etc/nginx /usr/share/nginx
root@ecfd0ee4824c:/# cd /etc/nginx
root@ecfd0ee4824c:/etc/nginx# ls
conf.d	fastcgi_params	mime.types  modules  nginx.conf  scgi_params  uwsgi_params

5.思考问题
每次改动nginx配置文件,都需要进入容器内部,十分的麻烦,如果可以在容器外部提供一个映射路径,达到在容器外部修改文件,容器内部就可以自动修改。(数据卷技术)

二、Docker 安装 Tomcat

#官方的使用
docker run -it --rm tomcat:9.0
#我们之前的启动都是后台,停止容器后还可以查到。但官方的命令,一般是用来测试,用完即删除。
#常规:下载启动
docker pull tomcat:9.0

#启动运行
docker run -d -p 9000:8080 --name tomcat02 tomcat

#测试访问没有问题
#进入容器
[root@liustudy home]# docker exec -it tomcat02 /bin/bash
#发现问题
1.linux命令少了
2.没有webapps
原因:阿里云镜像的原因,默认最小的镜像,所有不必要的都要剔除掉,保证最小可运行环境。

#查看文件
ls -al
#进入webapps目录下发现是空的
#进入webapps.dist目录下有web配置文件
#将webapps.dist中的文件复制到webapps中
cp -r webapps.dist/* webapps
然后在浏览器通过公网IP访问配置的端口9000,发现可以访问到Tomcat的官方页面。

思考问题:以后每次部署项目,都要进入容器十分麻烦。要是可以在容器外提供一个映射路径,WebApps , 在外部部署放置项目,就自动同步到内部。

三、Docker 安装 es+kibana

#es 暴露的端口很多
#es 十分的耗内存
#es 数据一般需要放置到安全目录,挂载
#启动 elasticsearch
docker run -d --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:7.6.2

#启动后linux·就很卡(太卡了。。。)
docker stats 查看 cpu的状态

# 查看docker stats
# 测试es 是否成功
[root@liustudy home]# curl localhost:9200
{
  "name" : "52185fb4ec66",
  "cluster_name" : "docker-cluster",
  "cluster_uuid" : "fpLv3zzdTGGxyg_HFfbAMg",
  "version" : {
    "number" : "7.6.2",
    "build_flavor" : "default",
    "build_type" : "docker",
    "build_hash" : "ef48eb35cf30adf4db14086e8aabd07ef6fb113f",
    "build_date" : "2020-03-26T06:34:37.794943Z",
    "build_snapshot" : false,
    "lucene_version" : "8.4.0",
    "minimum_wire_compatibility_version" : "6.8.0",
    "minimum_index_compatibility_version" : "6.0.0-beta1"
  },
  "tagline" : "You Know, for Search"
}

查看内存情况
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

查看内存 docker stats(已经控制到合理范围内了)
内存容器内部相互隔离,不能直接通过端口连接,所以需要通过网络处理才能进行连接。
在这里插入图片描述可视化

  • portainer
docker run -d -p 8088:9000 --restart=always -v /var/run/docker.sock:/var/run/docker.sock --privileged=true portainer/portainer
  • Rabcher(CI/CD再用)

什么是portainer?
Docker 图形化界面管理工具,提供一个后台面板供我们操作。

docker run -d -p 8088:9000 portainer/portainer
# 测试
[root@liustudy /]# curl localhost:8088
<!DOCTYPE html
><html lang="en" ng-app="portainer">
 
# 外网访问 http://ip:8088

访问后进入主页面:
在这里插入图片描述选择本地
在这里插入图片描述进入之后的面板
在这里插入图片描述

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-04-07 23:07:00  更:2022-04-07 23:08:51 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 21:20:07-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码