Docker部署

linux

打开远程文件:命令:rz -be

查看程序进程:  ps -ef | grep Skyland  

打包要求:

文件夹权限需要做下限制

.bat 程序需要删除掉

package.json 需要去掉 --daemon

 

压缩:tar -zcvf 压缩文件名.tar.gz   压缩文件名

解压: tar -xvf 解压文件夹.tar.gz

docker 帮助命令:

详情:docker info     docker --help

查看日志  : docker logs --since "2023-07-01T00:00:00" --until "2023-07-20T23:59:59" <container_name_or_id>

重启: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容器内的文件拷贝至宿主机中

  1. docker cp mysql:/etc/mysql/my.cnf .
  2.  #注意.代表是当前目录
     

复制修改后的配置文件到docker容器中去

   docker cp my.cnf 容器id:/etc/mysql/my.cnf

 

重启容器实例,并重新查看日志

  1. docker restart 容器id
  2.  docker logs -f --tail 10 容器id

重启容器实例,并重新查看日志

 

Docker 镜像

   commit 操作补充    

   1.docker commit 提交容器副本使之成为一个新的镜像

   2. docker commit -m="提交的描述信息" -a="作者" 容器ID 要创建的目标镜像名:[标签名]

 

Docker  容器数据卷。

         容器的持久化

 

Docker 本地镜像发布到阿里云 

      https://cr.console.aliyun.com    https://dev.aliyun.com

$ sudo docker login --username=registry.cn-hangzhou.aliyuncs.com

$ sudo docker tag [ImageId] registry.cn-hangzhou.aliyuncs.com/zzyybuy/mycentos:[镜像版本]

$ sudo docker push registry.cn-hangzhou.aliyuncs.com/zzyybuy/mycentos:[镜像版本号]

 

1.Linux 系统下使用自动化脚本安装docker: 

curl -ssl https://get.daocloud.io/docker | sh

  验证是否成功:

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 app
cd 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

vim搜索关键字 : /关键字名称 

 

.net 程序后台运行

命令      nohup ./CloudscapeRS.DatabaseProcessor &

             tmux 

        查看后台运行程序 : ps -ef | grep rm

        杀死进程: kill  -9  进程号

 

1. netstat -lntp
2. kill xxx
3. nohup ./CloudScapeApp.RSDataReceive &

 

posted @ 2021-10-26 16:59  不再犯错  阅读(251)  评论(0编辑  收藏  举报