admin管理员组文章数量:1643282
1、制作自己的镜像;
docker build -t prd-320707e-20231117 .
docker build -t prd-320707e-20231117 -f CI.Dockerfile .
2、运行;
docker run -d -p 8888:8088 --name screen111 harbor.nx-engine/bu2/eagoal/private/nx-patrolling-eagle:2023090601
docker run -d -p 3001:3000 --name ism111 prd-320707e-20231117
-p 映射容器内端口到宿主机、--name 容器名字、-d 后台运行
命令参考文档:Docker run reference | Docker Docs
3、镜像推送
登录到阿里云容器镜像服务
docker login --username=云上锦书xos registry-beijing.aliyuncs
将本地的镜像打上标签
(tag后是本地的镜像ID,后面指镜像版本)
docker tag 89da1fb6dcb9 registry-hangzhou.aliyuncs/yuns_202303/nginx:20230808
推送镜像到线上
docker push registry-hangzhou.aliyuncs/yuns_202303/nginx:20230808
registry-hangzhou.aliyuncs/yuns_202303/node:v14.0.0
4、推送成功后运行;
在目标服务器上安装 Docker:
首先确保目标服务器上已经安装了 Docker。如果没有安装,请根据操作系统和发行版的不同,查阅 Docker 官方文档进行安装。
进行登录
如果你推送镜像到了 Docker Hub 或其他私有仓库,你需要在目标服务器上登录到该仓库。使用以下命令进行登录:
echo "xxxx@Aaa" | docker login --username=云上青鸟 --password-stdin registry.cn-beijing.aliyuncs.com
该命令会要求输入你的用户名和密码,成功登录后,Docker 客户端将在本地保存认证信息,以便于拉取镜像。
拉取镜像:
使用以下命令从远程仓库中拉取镜像到目标服务器上:
docker pull registry.cn-beijing.aliyuncs.com/yuns_202303/koa_vue:latest
启动容器
一旦镜像成功拉取到目标服务器上,你可以使用以下命令来启动容器:
docker run -d -p 8888:3000 --name screen --platform linux/amd64 registry.cn-beijing.aliyuncs.com/modely/bigscreen:jiang111
5、更多相关命令
docker stop 21fd1b0eaa6a 停止容器运行
docker image prune // 删除没有引用的镜像
Total reclaimed space: 11.58GB
docker ps 查看当前运行中的容器
docker images 查看镜像列表
docker rm container-id 删除指定 id 的容器
docker stop/start container-id 停止/启动指定 id 的容器
docker rmi image-id 删除指定 id 的镜像
docker volume ls 查看 volume 列表
docker network ls 查看网络列表
docker logs ism_xosyun // 查看screen的日志;
docker logs -f ism_xosyun
// 查看某容器文件内容
docker exec -it test__xosyun cat /var/log/nginx/error.log
// 查看某容器目录列表
docker exec -it admin__xosyun ls /var/log/nginx
// 查看某容器是否安装node
docker exec -it test__xosyun node -v
// 到容器中执行某些命令
docker exec -it admin__xosyun sh -c "cd /data/app/km-h5 && npm i"
停止并清除全部正在运行的容器, 并清除所有的镜像
docker ps -aq | xargs docker stop && docker ps -aq | xargs docker rm
docker rmi $(docker images -q)
安装 nginx、node、redis、mongo;
docker pull nginx:20230808
docker run -d -p 3002:80 nginx
访问,启动成功。
docker pull node:14.18.1
docker run -itd --name node__ node:14.18.1
docker exec -it node__ /bin/bash // 进入查看容器运行
node -v
6、Alibaba Cloud Linux 3.2104 64位安装docker
安装最新依赖
sudo yum update
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
安装软件
sudo yum-config-manager --add-repo https://download.docker/linux/centos/docker-ce.repo
sudo yum install -y docker-ce
启动docker且设置开机自启动;
sudo systemctl start docker
sudo systemctl enable docker
// 验证 docker --version
7、环境变量设置
1、构建时注入
ne run dev -e JEEP_URL=jiang111,ALFA_URL=yunjin222
2、在 package.json 中写入
在项目的 package.json 文件中,可以添加特定的键来配置环境变量,这些配置会在运行 ne 命令时自动注入。
- ne-env-[command]:这是一个对象,用于指定在特定命令下需要注入的环境变量,例如:
"ne-env-dev": {
"NODE_SYS": "dealer"
}
3、在eggjs为基础的后端工程中
注入 Egg.js 启动参数
ne run dev --senv port=7002
ne-senv-[command]:与 ne-env 类似,但只在以 Egg.js 为基础的后端工程中有效,例如:
"ne-senv-dev": {
"port": "7002"
}
4、扩展
Egg.js 是一个基于 Node.js 的后端开发框架,旨在帮助开发者更高效地构建企业级应用。所以,当文档提到 "ne-senv" 只在 Egg.js 后端工程中有效时,意思是在使用 Egg.js 框架构建的后端应用中,可以通过该方式注入环境变量。
版权声明:本文标题:Docker 详解; 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/dianzi/1729358096a1198482.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论