首页 > 系统相关 >linux部署docker以及常用容器部署

linux部署docker以及常用容器部署

时间:2023-07-16 20:31:44浏览次数:50  
标签:部署 linux -- plus mysql falcon docker open

linux部署docker以及常用容器部署

前言

本文主要教大家linux安装部署docker以及常用容器部署

1. docker部署

1.1. 依次运⾏以下命令添加yum源

代码如下

yum update
yum install epel-release -y
yum clean all
yum list

1.2. 安装并运⾏Docker。

代码如下

yum install docker-io -y
systemctl start docker

1.3. 检查安装结果。

代码如下

docker info

1.4. 启动使⽤Docker

代码如下

systemctl start docker #运⾏Docker守护进程
systemctl stop docker #停⽌Docker守护进程
systemctl restart docker #᯿启Docker守护进程

1.5. 修改镜像仓库

代码如下

vim /etc/docker/daemon.json
#改为下⾯内容,然后重启docker
{
"debug":true,"experimental":true,"registry-mirrors":
["https://pb5bklzr.mirror.aliyuncs.com","https:
//hub
mirror.c.163.com","https://docker.mirrors.ustc.
edu.cn"]
}

1.6. 查看信息

代码如下

docker info

2. docker部署mysql

本例子部署的为mysql5.7的版本

代码如下

## start mysql in container
docker run -itd \
    --name falcon-mysql \
    -v /home/work/mysql-data:/var/lib/mysql \
    -e MYSQL_ROOT_PASSWORD=test123456 \
    -p 3306:3306 \
    mysql:5.7

3. dokcer部署redis

代码如下

docker run --name falcon-redis -p6379:6379 -d redis:4-alpine3.8

注意 公网redis 部署的时候要注意端口映射和增加密码 防止黑客恶意伤害redis端口

番外篇:centos7安装源地址http://mirrors.aliyun.com/centos/7/os/x86_64/

4. docker部署open-falcon

代码如下

docker run --name falcon-redis -p6379:6379 -d redis:4-alpine3.8

4.1 Running open-falcon container

4.1.1 Start mysql and init the mysql table before the first running

代码如下

## start mysql in container
docker run -itd \
--name falcon-mysql \
-v /home/work/mysql-data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=test123456 \
-p 3306:3306 \
mysql:5.7

## init mysql table before the first running
cd /tmp && \
git clone --depth=1 https://github.com/open-falcon/falcon-plus.git && \
cd /tmp/falcon-plus/ && \
for x in `ls ./scripts/mysql/db_schema/*.sql`; do
echo init mysql table $x ...;
docker exec -i falcon-mysql mysql -uroot -ptest123456 < $x;
done

rm -rf /tmp/falcon-plus/

4.1.2. Start redis in container

代码如下

docker run --name falcon-redis -p6379:6379 -d redis:4-alpine3.8

4.1.3. Start falcon-plus modules in one container

代码如下

## pull images from hub.docker.com/openfalcon
docker pull openfalcon/falcon-plus:v0.3

## run falcon-plus container
docker run -itd --name falcon-plus \
--link=falcon-mysql:db.falcon \
--link=falcon-redis:redis.falcon \
-p 8433:8433 \
-p 8080:8080 \
-e MYSQL_PORT=root:test123456@tcp\(db.falcon:3306\) \
-e REDIS_PORT=redis.falcon:6379 \
-v /home/work/open-falcon/data:/open-falcon/data \
-v /home/work/open-falcon/logs:/open-falcon/logs \
openfalcon/falcon-plus:v0.3

## start falcon backend modules, such as graph,api,etc.
docker exec falcon-plus sh ctrl.sh start \
graph hbs judge transfer nodata aggregator agent gateway api alarm

## or you can just start/stop/restart specific module as:
docker exec falcon-plus sh ctrl.sh start/stop/restart xxx

## check status of backend modules
docker exec falcon-plus ./open-falcon check

## or you can check logs at /home/work/open-falcon/logs/ in your host
ls -l /home/work/open-falcon/logs/

4.1.4 Start falcon-dashboard in container

代码如下

docker run -itd --name falcon-dashboard \
-p 8081:8081 \
--link=falcon-mysql:db.falcon \
--link=falcon-plus:api.falcon \
-e API_ADDR=http://api.falcon:8080/api/v1 \
-e PORTAL_DB_HOST=db.falcon \
-e PORTAL_DB_PORT=3306 \
-e PORTAL_DB_USER=root \
-e PORTAL_DB_PASS=test123456 \
-e PORTAL_DB_NAME=falcon_portal \
-e ALARM_DB_HOST=db.falcon \
-e ALARM_DB_PORT=3306 \
-e ALARM_DB_USER=root \
-e ALARM_DB_PASS=test123456 \
-e ALARM_DB_NAME=alarms \
-w /open-falcon/dashboard openfalcon/falcon-dashboard:v0.2.1 \
'./control startfg'

4.1.5. Start falcon-agent in container

代码如下

sudo docker run -d --restart always --name falcon-agent \
-e NUX_ROOTFS=/rootfs \
-v /:/rootfs:ro \
openfalcon/falcon-plus:v0.3 \
./agent/bin/falcon-agent -c /open-falcon/agent/config/cfg.json

4.2 Building open-falcon images from source code

4.2.1 Building falcon-plus

代码如下

cd /tmp && \
git clone https://github.com/open-falcon/falcon-plus.git && \
cd /tmp/falcon-plus/ && \
docker build -t falcon-plus:v0.3 .

4.2.2 Building falcon-dashboard

代码如下

cd /tmp && \
git clone https://github.com/open-falcon/dashboard.git && \
cd /tmp/dashboard/ && \
docker build -t falcon-dashboard:v0.2.1 .

5. docker 安装部署Prometheus Server

代码如下

docker run -p 9090:9090 -v /etc/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml prom/prometheus

6. docker 安装部署grafana

代码如下

docker run -d -p 3000:3000 grafana/grafana

总结

以上就是linux安装部署docker以及常用容器部署的全部内容,如果对你有所帮助的话请点个关注,我会不定时更新技术分享,对于文章中内容有问题的地方可以在下面留言,看到我会及时回复。

标签:部署,linux,--,plus,mysql,falcon,docker,open
From: https://blog.51cto.com/u_16142959/6740005

相关文章

  • redis docker 配置文件
    RedisDocker配置文件详解Redis是一个基于内存的开源数据库,用于存储和检索数据。Docker是一种轻量级容器化平台,可以快速部署和管理应用程序。通过将Redis与Docker结合使用,我们可以轻松地创建和管理Redis实例。在使用Docker部署Redis时,我们需要创建一个配置文件,用于定义Redis的行......
  • Docker中运行mysql并且数据目录存在本地
    Docker中运行mysql并且数据目录存在本地  Docker中运行mysql并且数据目录存在本地按https://github.com/NeuCharFramework/NCF/wiki/来弄win11,dockerv24.0.2,镜像加速配置: {"debug":false,"experimental":false,"features":{"buildkit":tr......
  • windows与archlinux双系统安装记录
    参考博客1 https://zhuanlan.zhihu.com/p/138951848archlinux安装u盘制作软件rufus u盘数据备份镜像下载安装U盘制作,参考博客2 u盘制作 这个图片来自旁边的链接  注意:写入方式为DD而非ISO,选项那选择GPT而非默认的MBR,其他的按照旁边的图来就行,没有的就默认从windo......
  • redis 多个哨兵部署到同一台机子
    Redis多个哨兵部署到同一台机子Redis是一个开源的内存数据库,被广泛应用于存储和缓存。在生产环境中,为了保证高可用性,我们可以使用Redis的哨兵机制。哨兵机制可以监控Redis主从节点的状态,并在主节点宕机时自动选举出新的主节点。在本文中,我们将探讨如何在同一台机器上部署多个Redis......
  • Docker部署Java应用[转]
    练习要求:在CentOSLinuxrelease7.7.1908(Core)中,先拉一个Centos镜像,然后在光秃秃的centos镜像基础上把项目环境搭建好,然后再提交到自己的docker仓库里。 操作环境:虚拟机中安装好的CentOSLinuxrelease7.7.1908(Core) 一、安装并启动Docker 1.更新yumyum-yu......
  • linux MySQL数据库索引
    索引在数据库中占有重要地位,当高并发时,一条一条的查找数据是很慢的,但是索引可以分流,可以快速定位,解决高并发。目录一、索引概念二、索引作用三、索引的应用四、索引分类五、索引的创建六、索引的管理七、总结    一、索引概念1.索引概念数据库索......
  • 拷贝文件到docker里面
    拷贝文件到Docker容器中在使用Docker时,我们常常需要将本地文件拷贝到正在运行的Docker容器中。这个过程可能涉及到从宿主机到容器的文件传输,以及在目标容器中进行文件操作。本文将为您介绍如何使用不同方法将文件拷贝到Docker容器中,并提供相关代码示例。1.使用dockercp命令Doc......
  • shell脚本-lnmp一键部署
    shell脚本-lnmp一键部署创建文件lnmp.shvimlnmp.sh#!/bin/bash#描述:LNMP网站架构部署脚本cat<<EOF欢迎使用LNMP架构服务搭建请将安装包放入/opt目录下1.安装nginx服务2.安装mysql3.安装php4.一键安装LNMP架构EOFread-p"请输入你的选择:"choicefunctionNginx(......
  • linux 内存管理 --- 用户空间 malloc 内存申请原理
    相对于栈而言,堆这片内存面临着一个稍微复杂的行为模式:在任意时刻,程序可能发出请求,要么申请一段内存,要么释放一段已经申请过的内存,而且申请的大小从几个字节到几个GB都有可能,我们不能假设程序一次申请多少堆空间,因此,堆的管理显得较为复杂。那么,使用malloc()在堆上分配内存到底是......
  • Oracle 12c for Linux安装手册
    Oracle安装前配置关闭防火墙及selinux、修改主机名和host文件vi/etc/selinux/configselinux=disabledserviceiptablesstopchkconfig iptables off/etc/sysconfig下面的network文件HOSTNAME=hostname在/etc/hosts文件最后添加x.x.x.xhostname安装依赖包yum-......