mac docker 操作

Debian Docker 安装

sudo apt-get install apt-transport-https ca-certificates curl gnupg2 software-properties-common 
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/debian/gpg | apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://mirrors.aliyun.com/docker-ce/linux/debian $(lsb_release -cs) stable"
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io

配置
/etc/docker/daemon.json

Docker 虚拟网络
docker network create XXX-net
从Docker Hub查找所有镜像名包

docker search tomcat

收藏数大于10的镜像
docker search -s 10 tomcat

从Docker Hub下载tomcat最新版镜像
docker pull tomcat

创建本地java镜像
 vi dockerfile

1
2
FROM tomcat
COPY yi-spring-boot-1.0.0-SNAPSHOT.jar /usr/local/tomcat/webapps/

 
构建: docker build -t tang .

查看本地镜像列表
docker images

镜像备份成本地文件
docker save -o nginx.tar smallcheck/nginx


删除本地镜像
docker rmi
镜像id(或镜像REPOSITORY)


加载备份的nginx.tar文件
docker load -i nginx.tar


删除虚悬镜像
docker image prune


拷贝文件到容器
docker cp /Users/pengxuan/nginx/conf/test-php.conf 8a6fc28c1a45:/etc/nginx/conf.d/

构建并运行容器:

  mysql  运行
  sudo docker run -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:8.0.16 --lower-case-table-names=1

redis 运行
  sudo docker run -i -t -d --name redis -p 6379:6379 redis

  tang 运行
  docker run -p 8081:8081 --name tang -d 镜像名
  docker run -i -t -d --name tang -p 8081:8081 --privileged=true -v /www/wwwroot/tang:/www tang  

 nginx 运行
  docker run -i -t -d --name maps -p 9090:80 --privileged=true -v /opt/maps:/www nginx

 sentinel 运行
 sudo docker run -p 8858:8858 --name sentinel -d bladex/sentinel-dashboard

查看容器
docker ps  查看所有的容器命:docker ps -a
删除容器,先要停止服务: docker stop 容器ID ,再执行: docker rm 容器ID  也可以一次删除所有停止的容器:docker rm $(docker ps -a -q)


进入到容器可以使用如下命令:
docker container exec -it 容器id /bin/bash
docker exec -it 容器name /bin/bash
或者
docker container exec -it 容器id /bin/sh
如果权限不足
docker exec -it id /bin/bash 改为 docker exec -u 0 -it id /bin/bash

nginx.conf配置文件在 /etc/nginx/  下面,但是你使用vim nginx.conf 或者vi nginx.conf
会发现vi或者vim命令没有用,解决办法:apt-get update  完成之后 apt-get install -y vim
此时你就可以自己定制nginx.con文件了,改好配置文件之后重启容器,
步骤
1、容器停止: docker stop nginx 
2、容器启动: docker start nginx
或直接重启: docker restart nginx

启动的容器创建新的镜像:docker commit
docker commit -a "anil" -m "" 919bdeb0b343 mysql:b1

日志查看命令
docker logs -f 容器ID

实时查看最后500条日志:
docker logs -f --tail=500 容器ID

查看最近30分钟的日志:
docker logs --since 30m 容器ID

查看某时间之后的日志的最新500条日志:
docker logs --since="2021-11-30" --tail=500 容器ID

查看某时间之后的日志:
docker logs -t --since="2021-11-30T00:00:00" 容器ID

查看某时间段日志:
docker logs -t --since="2021-11-30T00:00:00" --until "2021-12-30T00:00:00" 容器ID

 

xfg容器项目更新

Dockerfile

FROM smallcheck/nginx:1.19.4
VOLUME /tmp
ENV LANG en_US.UTF-8
ADD ./dist/ /usr/share/nginx/html/
EXPOSE 80
EXPOSE 443

1、文件打包上传:/home/xfgit/docker/inte-terminal-ui/build-dev, 删除dist解压目录: rm -rf dist , 解压打包文件: unzip dist.zip


2、终端进入目录,执行清除命令 ./docker-clear.sh。

复制代码
container=inte-terminal-ui

read -r -p "确认删除容器${container}?[y/n]" input
case $input in
     [yY])
       docker stop $container
       docker rm $container
       docker images | grep $container | awk '{print $3}' | xargs docker rmi
       exit 1
       ;;
     [nN])
       exit 1
       ;;
     *)
       echo "无效参数"
       ;;
esac
复制代码

3、执行build命令 ./docker-build.sh。

 docker build -t 172.16.1.128:8887/inte-terminal/inte-terminal-ui:1.0.1 .

4、返回上级目录。执行run命令 ./docker-run.sh。

docker run -d \
      --restart always \
      -p 5888:80 \
      -p 5443:443 \
      -v /home/xfgit/docker/inte-terminal-ui/nginx.conf:/etc/nginx/nginx.conf \
      -v /home/xfgit/docker/inte-terminal-ui/logs:/var/log/nginx  \
      --name inte-terminal-ui \
      172.16.1.128:8887/inte-terminal/inte-terminal-ui:1.0.1

5、运行浏览器访问。

posted @   pxuan  阅读(736)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示