文章目录
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 后查看