敏捷交付如何驱动企业在快速变化的市场中获胜
825
2022-11-17
docker部署
打包要求:
文件夹权限需要做下限制
.bat 程序需要删除掉
package.json 需要去掉 --daemon
tar -zcvf 压缩文件名.tar.gz 压缩文件名
docker 帮助命令:
详情:docker info docker --help
重启:service docker restart
镜像命令:
镜像运行模板列表: docker images
列出所有镜像: docker images -a
列出运行镜像的ID docker images -q
列出镜像说明 docker images --digests
列出镜像id详情 docker images --no-trunc
查询 docker search '某一个镜像的名字'
拉取 docker push '某一个镜像的名字'
删除单个 docker rmi '某一个镜像的名字'
强制删除单个 docker rmi -f '某一个镜像的名字'
删除多个 docker rmi -f 'xxx' 'xxx'
删除全部 docker rmi -f ${ docker images -qa}
容器:
-centos镜像模板 docker pull centos
新建并启动容器. docker run -it --name '容器名称' '镜像名称'
-p 容器端口:程序端口
-P 随机分配端口
列出当前运行的容器 docker ps
退出容器 exit (容器停止运行) 或者 ctrl+P+Q (容器不停止退出)
启动容器 docker start 容器id或者容器名字
重启容器 docker restart 容器id或者容器名称
停止容器 docker stop xxx
强制重启容器 docker kill xxx
删除已停止的容器 docker rm 容器id
一次性删除多个容器 docker rm -f ${docker ps -a -q} 或者 docker ps -a -q | xargs docker rm
重要:
启动后台守护式容器 docker run -d '容器名称'
查看容器日志 docker logs -f -t --tail=100 '容器id'
查看容器内运行的进程 docker top '容器id'
查看容器内部细节 docker inspect 容器id
进入正在运行的容器并以命令行运行
1. 进入容器,不启动新进程 docker attach 容器id
2.不进入容器 docker exec -t 容器ID ls -l '文件名'
从容器内拷贝文件到主机上 docker cp 容器id:容器内路径(/tmp/xx.log) 目标主机路径
将docker容器内的文件拷贝至宿主机中
docker cp mysql:/etc/mysql/my-f . #注意.代表是当前目录
复制修改后的配置文件到docker容器中去
docker cp my-f 容器id:/etc/mysql/my-f
重启容器实例,并重新查看日志
docker restart 容器id docker logs -f --tail 10 容器id
重启容器实例,并重新查看日志
Docker 镜像
commit 操作补充
1.docker commit 提交容器副本使之成为一个新的镜像
Docker 容器数据卷。
容器的持久化
Docker 本地镜像发布到阿里云
$ sudo docker login --username=registry--hangzhou.aliyuncs.com
$ sudo docker tag [ImageId] registry--hangzhou.aliyuncs.com/zzyybuy/mycentos:[镜像版本]
$ sudo docker push registry--hangzhou.aliyuncs.com/zzyybuy/mycentos:[镜像版本号]
1.Linux 系统下使用自动化脚本安装docker:
验证是否成功:
docker version
启动并加入开机启动
systemctl start docker
systemctl enable docker
下面就可以开始使用了
docker load < skylandweb1.0.tar
docker run -dt --name skylandweb --restart always -p 17001:80 skylandweb:1.0
-v /home/uos/:/usr/local/app
cd /usr/local/mkdir appcd app/
sudo docker cp /home/uos/RSServer.tar skylandweb:/usr/local/app
tar xvf RSServer.tar
yarn start
初始化容器:
docker run -itd -p 10003:80 -p 6006:6379 -v /ychyc:/ychyc -v /data/redis:/usr/local/redis6379 --name skylandweb --restart=always skylandweb:4.0 /bin/bash
启动exe文件,生产环境下使用pm2进程管理工具启动,运行npm install pm2 -g 全局安装pm2,然后运行npm run start
后台运行: nohup ./server.out > server.log 2>&1 &yarn global add pm2
./start.sh
导出 docker 镜像 docker save [image:v1] | gzip > 123.tar.gz
# 导出镜像 docker save myubuntu:latest > myubuntu.tar
# 导入镜像 docker load < myubuntu.tar
# 修改容器名称 docker tag xxx
# 导出镜像 docker export 15adabd78f9b > ubuntu-15adabd78f9b.tar
# 导入镜像 docker import ubuntu-15adabd78f9b.tar
export 不会保留镜像的层级信息,所以大小会比 save 小
docker 日志
docker logs --since 30m CONTAINET_ID
查看端口是否占用
netstat -ntlp | grep 10012
docker ps | grep 10012
- 程序后台运行
命令 nohup ./CloudscapeRS.DatabaseProcessor &
tmux
查看后台运行程序 : ps -ef | grep rm
杀死进程: kill -9 进程号
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~