docker就这?(更新docker-compose,安装nacos,pinpoint,sentry)

发布于:2023-01-04 ⋅ 阅读:(287) ⋅ 点赞:(0)

Docker

1.docker的安装和卸载

##1.yum安装gcc相关
yum -y install gcc
yum -y install gcc-c++
##2.安装软件包
yum install -y yum-utils
##3.设置stable镜像仓库
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
##4.更新yum软件包索引 
yum makecache fast
##5.安装docker
yum -y install docker-ce docker-ce-cli containerd.io
##6.启动docker
systemctl start docker
##7.测试
docker version
*docker run hello-world*
##8.卸载docker
systemctl stop docker
yum remove docker-ce docker-ce-cli containerd.io
rm -rf /var/lib/docker
rm -rf /var/lib/containerd

1.1docker 配置阿里云加速

##直接粘贴
mkdir -p /etc/docker
tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://(自己的).mirror.aliyuncs.com"]
}
EOF

##分步
mkdir -p /etc/docker
vim /etc/docker/daemon.json
{
  "registry-mirrors": ["https://(自己的).mirror.aliyuncs.com"]
}
##重启
systemctl daemon-reload
systemctl restart docker

2.docker-compose

2.1下载安装

#下载
sudo curl -L "https://github.com/docker/compose/releases/download/1.25.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
#授权
chmod +x /usr/local/bin/docker-compose
#查看版本
docker-compose --version

更高版本要去下载包解压docker-compose

2.2基础命令

docker-compose 基础命令

docker-compose up #启动
docker-compose down #停止并删除容器,网络,卷,镜像
docker-compose start #启动
docker-compose stop #停止
docker-compose config #检查配置
docker-compose config -q #检查配置,有问题才输出

3.docker其它

3.1 数据卷

docker volume create (...)	#创建数据卷
docker volume ls			#显示存在数据卷
docker volume prune			#清除不用的数据卷

3.2 docker 网络

3.2.1网络模式

bridge:为每个容器分配,设置ip等,并将容器连接到一个docker0;虚拟网桥,默认为该模式。
host:容器并不会虚拟出自己的网卡,配置自己的ip等,而是使用宿主机的ip和端口。
none:容器有独立的Network namespace,但是没有对其进行任何网络设置,如分配 veth pair 和网桥连接,ip等。
container:新创建的容器不会创建自己的网卡和配置自己的IP,而是和一个指定的容器共享ip,端口范围等。

3.2.2 自定义网络

docker network ls #展示
docker network create #创建
docker network rm #删除一个或者多个
docker network prune #删除无用的
docker run -d -p 8081:8080 --network 'net name' --name tomcat81 tomcat:8.0
docker run -d -p 8082:8080 --network 'net name' --name tomcat82 tomcat:8.0

在各自容器中可以ping通

3.3数据的迁移

把服务器A的数据转移到服务器B
第一种
1.首先把镜像打包成为一个文件(也可以 使用 docker commit nginx nginx.tar生成镜像然后继续第一步)

[root@localhost ~]# docker images
REPOSITORY                             TAG       IMAGE ID       CREATED         SIZE
hello-world                            latest    18e5af790473   10 months ago   9.14kB
[root@localhost ~]# docker save -o hello-world.tar hello-world

2.使用ftp软件上传B服务器
3.使用上传的文件生成镜像

[root@localhost ~]# docker load -i hello-world.tar

第二种(也可以 使用 docker commit nginx nginx.tar生成镜像)
1.将容器打包成文件

[root@localhost ~]# docker ps 

[root@localhost ~]# docker export -o nginx.tar nginx

2.使用ftp软件上传
3.使用上传的文件生成镜像

[root@localhost ~]# docker import -i nginx.tar

4.镜像的批量删除

docker rmi $(docker images | grep "provider" | awk '{print $3}')

Docker安装部署软件

Docker安装nacos

1.nacos简介

注册中心,配置中心

2.nacos单机版的安装

1.创建docker网络

docker network create nacos
docker network ls

2.数据库配置
创建数据库
在这里插入图片描述
创建用户
在这里插入图片描述

3.下载SQL文件

# 下载数据库文件
https://github.com/alibaba/nacos/blob/master/distribution/conf/nacos-mysql.sql

4.启动容器

docker search nacos #搜索镜像
docker pull nacos  #拉取镜像

docker volume create nacos #创建数据卷

docker run -d -p 8848:8848 \ #后台启动;端口
--name nacos \ #命名
--network nacos \ #注明网络
--env MODE=standalone \ #实例
--env SPRING_DATASOURCE_PLATFORM=mysql \ #数据库类型
--env MYSQL_SERVICE_HOST=[your host] \ #ip
--env MYSQL_SERVICE_PORT=3306 \ #mysql端口
--env MYSQL_SERVICE_DB_NAME=nacos \ #database name
--env MYSQL_SERVICE_USER=[mysql-username] \ #user name
--env MYSQL_SERVICE_PASSWORD=[mysql-password] \ # user password
--mount type=volume,source=nacos,target=/home/nacos \ #挂载数据卷,方便编辑和查看
nacos/nacos-server:latest #镜像名

Docker安装sentry

作用:sentry是一个基于Django构建的现代化的实时事件日志监控、记录和聚合平台,主要用于如何快速的发现故障。

docker pull redis #安装redis镜像
docker pull postgres #安装postgres镜像
docker pull sentry #安装sentry镜像

#创建postgres容器
docker run -d --name sentry-postgres -e POSTGRES_PASSWORD=secret -e POSTGRES_USER=sentry postgres 

#创建redis容器
docker run -d --name sentry-redis redis

#生成随机密钥
docker run -d --rm sentry config generate-secret-key

# <secret-key> 替换成上一步生成的秘钥 
docker run -it --rm -e SENTRY_SECRET_KEY='<secret-key>' --link sentry-postgres:postgres --link sentry-redis:redis sentry upgrade

# <secret-key> 替换成上上一步生成的秘钥 
docker run -d -p 9000:9000 --name my-sentry -e SENTRY_SECRET_KEY='<secret-key>' --link sentry-redis:redis --link sentry-postgres:postgres sentry

# <secret-key> 替换成上上上一步生成的秘钥 
docker run -d --name sentry-cron -e SENTRY_SECRET_KEY='<secret-key>' --link sentry-postgres:postgres --link sentry-redis:redis sentry run cron

# <secret-key> 替换成上上上上一步生成的秘钥 
docker run -d --name sentry-worker-1 -e SENTRY_SECRET_KEY='<secret-key>' --link sentry-postgres:postgres --link sentry-redis:redis sentry run worker

Docker安装pinpoint

作用:pinpoint是一个分析大型分布式系统的平台,提供解决方案来处理海量跟踪数据。

下载,docker-compose启动

git clone https://github.com/naver/pinpoint-docker.git
cd pinpoint-docker
docker-compose pull && docker-compose up -d

或者访问github直接download

https://github.com/pinpoint-apm/pinpoint-docker

在这里插入图片描述
把下载好的zip文件上传到服务器然后

unzip pinpoint-docker-master.zip #解压
cd pinpoint-docker-master #进入目录
docker-compose up -d #启动
本文含有隐藏内容,请 开通VIP 后查看

网站公告

今日签到

点亮在社区的每一天
去签到