当前位置: 首页 > ds >正文

docker使用sh脚本创建容器

第一次创建,初始化挂载目录

#!/bin/bash# 容器内目录
dockerData="/usr/local/mysql/data"
dockerImg="/www/python/static/img"
# 挂载主机目录
data="/home/dockerV/dade01_data"
img="/home/dockerV/dade01_img"# 第一次创建使用,后面的就不用了
# 创建宿主机目标目录,不存在创建
mkdir -p $data
mkdir -p $img
# 需要去容器先拷贝一份出来
cp -r /home/dockerV/mysql/* $data/
# sleep 3
# mysql数据库data目前权限,里面是dade权限,主机也要给一样的权限,不然mysql无法运行
sudo chown -R dade:dade $data# 启动容器,创建容,memory限制容器内存大小5g,dade:120是那个容器版本,:rw表示读写,:ro是只读,不写(rw,ro默认读写)
docker run -d --name dadeName --memory=5120m -p 40060:80 -p 40061:3306 -v $data:$dockerData -v $img:$dockerImg dade:120 /bin/bash -c "/www/start.sh && tail -f /dev/null"

-d后台运行

/www/start.sh启动执行脚本

&& tail -f /dev/null 的作用
&& tail -f /dev/null 是一个在容器中常用的技巧,用于保持主进程运行,防止容器因主命令执行完毕而退出
性能影响:tail -f /dev/null 几乎不消耗 CPU 资源,比 sleep infinity 更高效。

http://www.xdnf.cn/news/10755.html

相关文章:

  • day 43
  • [SC]SystemC语法小结(三)
  • 函数组件和类组件
  • dns的正向解析,反向解析,多项解析,主从配置
  • PCIe—TS1/TS2 、EQ TS1/EQ TS2
  • YOLOV7改进之融合深浅下采样模块(DSD Module)和轻量特征融合模块(LFI Module)
  • 制作个人Github学术主页
  • PostgreSQL 在生物信息学中的应用
  • 4.RV1126-OPENCV 图像轮廓识别
  • ios tableview吸顶
  • 深度学习和神经网络 卷积神经网络CNN
  • 【大模型学习】项目练习:视频文本生成器
  • 网络安全:网页密码防护与记住密码功能的安全
  • 机器人自动火焰切割H型钢的系统设计与应用
  • 工作流引擎-16-开源审批流项目之 整合Flowable官方的Rest包
  • Fullstack 面试复习笔记:操作系统 / 网络 / HTTP / 设计模式梳理
  • Ubuntu22.04 安装 ROS2 Humble
  • eBay关键词搜索API开发指南
  • 前端面试宝典---前端水印
  • 【笔记】部署 AgenticSeek 项目问题:端口 8000 被占用
  • 在 Windows安装 make 的几种方式
  • 【LeetCode 热题100】回溯:括号生成 组合总和(力扣22 / 39 )(Go语言版)
  • 信号处理基础到进阶再到前沿
  • StarRocks的几种表模型
  • android binder(1)基本原理
  • sigmastar实现SD卡升级
  • day17 leetcode-hot100-34(链表13)
  • Oracle授权操作
  • P12592题解
  • 图论刷题1