idea + Docker + 阿里镜像服务打包部署

news/2025/2/26 10:01:29

一、下载docker desktop软件

官网下载docker desktop,需要结合wsl使用

启动成功的画面(如果不是这个画面例如一直处理start或者是stop需要重新启动,不行就重启电脑)

打包成功的镜像在这里,如果频繁打包会导致磁盘空间被占满,需要定期删除旧镜像

二、阿里云创建镜像

创建镜像服务实例(个人版免费但可维护性不保证)

设置的密码用在idea的docker镜像配置和ecs上进行脚本配置

创建命名空间

在命名空间下创建镜像仓库

步骤1

步骤2

结果

三、idea配置docker

配置本地docker地址(本地的话就是tcp://127.0.0.1:2375)

创建Dockerfile文件

Dockerfile说明

idea创建docker镜像推送脚本

步骤1.

步骤2

.

有两种方法配置docker推送到阿里云镜像

1.使用AccessKey

idea将阿里云创建好的accesskey输入

配置脚本

2.使用阿里云镜像的账号密码(账号为登录账号,密码为设置的镜像访问密码)

配置脚本

四、ecs服务器上安装docker和配置docker脚本

安装教程

https://blog.csdn.net/romanticRose/article/details/101351679

常用开发docker命名

docker ps 看正在运行中的镜像

docker ps -a 看全部镜像

docker stop 停止镜像(一般是内存过大就停止)

docker start 开启镜像

docker restart 重启镜像

docker rm 删除镜像

查看单个镜像日志 docker logs -f ad-admin

查看 启动镜像至今的日志 docker logs -f -t --since="2023-01-01T00:00:00" ad-spider 查看 时间范围至今的日志 注意事项:若镜像处于stop状态,无法重新部署sh文件,必须删除rm;

//如何观察当前服务线程使用情况

1.docker exec -it ad-resolve bash 进入到对应的dokcer容器

2.top 查看占用cpu和内存的情况 找到对应的PID top -H -p 1 查看对应的线程(可以看出占用内存和cpu情况)

3.jstack 1 >> xxx.txt 打印对应的线程到Docker 本地

4.docker cp ad-resolve:/xxx.txt / 将对应的文件复制到本地进行查看

执行项目脚本

IMAGE_NAME=配置的镜像仓库地址(rregistry-vpc.cn-shenzhen.xx.aliyuncs.com/xxx/sz-admin)
CONTAINER_NAME=容器名称
#容器id
CID=$(docker ps | grep "$CONTAINER_NAME" | awk '{print $1}')
#镜像id
IID=$(docker images | grep "$IMAGE_NAME" | awk '{print $3}')

#删除容器和镜像
delete(){
    if [ -n "$CID" ]; then
        echo "exist $CONTAINER_NAME container,CID=$CID,delete docker container ..."
        docker stop $CONTAINER_NAME
        docker rm $CONTAINER_NAME
        echo "$CONTAINER_NAME container delete success"
    fi

    if [ -n "$IID" ]; then
        echo "exist $IMAGE_NAME image,IID=$IID, ,delete docker image ..."
        docker rmi -f $IID
        echo "$IMAGE_NAME image delete success"
    fi
}

run(){
    delete
    docker login --username=阿里云登录账号(不加.onaliyun.com这段) --password=镜像设置的密码 镜像地址(registry-vpc.cn-shenzhen.xx.aliyuncs.com)
    docker pull $IMAGE_NAME
    docker run --cap-add=SYS_PTRACE --name $CONTAINER_NAME -p 端口:端口 -e JAVA_OPTS='-XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=128m -Xms2048m -Xmx2048m -Xmn256m -Xss256k -XX:SurvivorRatio=8 -XX:+UseConcMarkSweepGC' -v /opt/dnwx/log/ad-admin:/opt/dnwx/log/ad-admin  -v /etc/localtime:/etc/localtime:ro -d  $IMAGE_NAME
}

#入口
run

四、执行脚本

当前阿里云镜像

linux执行

执行成功 docker ps 可以看到容器


http://www.niftyadmin.cn/n/5868517.html

相关文章

视频裂变加群推广分享引流源码

源码介绍 视频裂变加群推广分享引流源码 最近网上很火,很多人都在用,适合引流裂变推广 测试环境:PHP7.4(PHP版本不限制) 第一次访问送五次观看次数,用户达到观看次数后需要分享给好友或者群,好友必须点击推广链接后才会增加观看次…

深入解析提示词:从基础到结构化应用

在人工智能蓬勃发展的当下,提示词(Prompt)扮演着至关重要的角色。无论是在与聊天机器人交流,还是驱动复杂智能体完成任务,精准且高效的提示词都能起到事半功倍的效果。本文将带你全面了解提示词,深入探索结…

Flutter - 基础Widget

Flutter 中万物皆 Widget,基础Widget 同步对应 Android View. 普通文本 Text /*** 控制文本样式统一使用 style:TextStyle, 例:fontSize(字体大小),color(颜色),shadows(阴影)等等* 控制文本布局需单独设置:* textAlign(文不对齐方式)* te…

【论文学习】DeepSeek-V3 总结

文章目录 Abstract1. Introduction2. Architecture2.1 Basic Architecture2.2 Multi-Token Prediction 3. Infrastructures3.1 Compute Clusters3.2 Training Framework3.3 FP8 Training 4. Pre-Training4.1 Data Construction4.2 Hyper-Parameters4.3 Long Context Extension4…

大白话React第六章深入学习 React 高级特性及生态

大白话React第六章深入学习 React 高级特性及生态 1. React Hooks 深入探究 React Hooks 就像是给你的 React 工具箱里添加了一堆超好用的小工具,让你在写函数组件的时候更轻松、更强大。 useEffect Hook:它就像一个“副作用管理器”。比如你要在组件…

DiskGenius v5.6.1 硬盘管理 文件恢复 数据恢复 官方版

参考原文:DiskGenius v5.6.1 硬盘管理 文件恢复 数据恢复 官方版 软件介绍 老牌软件了,无论是数据恢复,磁盘管理都非常好用 DiskGenius,集数据恢复、分区管理、备份还原等多功能于一身的超级工具软件。DiskGenius是专业级的数据…

虚拟机 | Ubuntu 安装流程以及界面太小问题解决

提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、Ubuntu初识二、使用步骤1.下载ubuntu镜像2.创建虚拟机1、使用典型(节省空间)2、稍后安装方便配置3、优选Linux版本符合4、浏览位置&…

【Elasticsearch】使用Postman操作es的_bulk批量操作

众所周知,Elasticsearch的语法还是很恶心的。因此需要大量的调试,有些人在kibana上进行调试,但是如果想使用Postman进行调试时,大部分还是没有问题的。主要是bulk操作,有一些特殊性。关键问题在于换行这里。 如果你要…