您的位置 首页 java

java开发必备的docker基础知识

Docker 安装与常用命令

docker 安装(centos7)

使用root账号登录系统:

  $ uname -r  //此命令查看内核版本,版本号大于必须3.10  

确保 yum 包更新到最新

 $ yum update  

卸载旧版本(如果安装过旧版本的话)

 $ yum remove docker  docker-common docker-selinux docker-engine  

安装需要的软件包, yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的

 $ yum install -y yum-utils device-mapper-persistent-data lvm2  

设置yum源

 $ yum-config-manager --add-repo   

安装最新版本的Docker

 $ yum install docker-ce docker-ce-cli containerd.io  

启动Docker并设置开机启动

 $ systemctl start docker
$ systemctl enable docker  

验证Docker

 $ docker version  

docker 启动重启停止

 启动docker  systemctl start docker
重启docker  sudo service docker restart
关闭docker  service docker stop   
关闭docker  systemctl stop docker  

docker 镜像运行

docker run -d -p 8080:80 镜像的名字:版本号 8080是主机的 端口号 80是容器的端口号

 -d 表示后台启动 返回容器的id
-t 表示开启虚拟终端,通常与 -i 同时使用
-i 以交互模式运行容器,通常与 -t 同时使用
-v 挂载目录 格式: -v 宿主机目录/容器目录
-p  端口映射  格式 -p 80:8080 80是宿主机端口:8080是容器的端口
--name 给容器起名 格式: --name myname  

docker 删除操作

注意哦,首先删除容器才能删除镜像

 docker ps -a 查看所有的容器
docker rm 容器id 删除对应的镜像容器
docker rmi 镜像ID 删除对应的镜像  
 docker stop $(docker ps -a -q) 停掉所有运行的容器
docker rm $(docker ps -a -q) 删除所有运行的容器
docker rmi -f 镜像ID 先停止容器再删除镜像 一步到位
docker rmi -f $(docker images -qa)  先停止所有容器然后删除所有的镜像  

docker 容器进入

 docker attach 容器id    备注:只要这个连接终止,或者使用了exit命令,容器就会退出后台运行
docker exec -it 容器ID /bin/bash 备注:exit退出,容器会在后台运行,实际中一般都是使用该方法进入容器  

docker 日志查看

 docker exec -it [id] bash  进入容器
tail -f paysite.log  实时滚动paysite.log日志文件
less paysite.log  查看paysite.log日志文件  b上翻 d下翻  G文件尾  g文件头 
​
docker logs -f --tail=100 f44f38358b53  查看(容器ID:f44f38358b53)最近100行日志(启动不成功的情况 容器外)  

docker Dockerfile构建镜像

docker 构建镜像之——jar包自定义镜像

  • 新建一个用于存放镜像的文件夹
  • 在新建的文件夹里面新建一个Dockerfile文件,(其中webpay.jar 改成你的jar包名称)
  • FROM livingobjects/jre8
    ADD webpay.jar app.jar
    RUN bash -c ‘touch /app.jar’
    ENTRYPOINT [” java “,”-Djava.security.egd=file:/dev/./urandom”,”-jar”,”-Xms2048m”,”-Xmx2048m”,”-Duser.timezone=GMT+8″,”/app.jar”]
  • cd切换至文件夹下,执行如下命令构建镜像(webpay是镜像的名字,修改为需要的镜像名字)
  • docker build -t=”webpay” .
  • 构建完成之后通过 docker images 查看镜像是否构建成功
  • 启动镜像,执行如下命令
  • docker run -d –name webpay -p 8006:8001 -it -v /home/alljars/webpay.jar:/app.jar webpay:latest

docker 迁移与备份

备份镜像

 docker save -o 备份镜像的名字 源镜像名字:tag版本号
举例:
docker save -o myself_mysql.tar mysql:5.5  //执行此命令会在宿主机跟目录下(/root)生成myself_mysql.tar  

镜像还原

 docker load -i 还原的镜像名字(带路径)
举例:
docker load -i myself_mysql.tar //执行此命令会从宿主机跟目录(/root)下加载 myself_mysql.tar  

二 docker安装mysql并启动

拉取镜像:拉取mysql5.7版本

 $ docker pull mysql:5.7    

运行一个容器,启动mysql5.7

 $ docker run --name mysql57 -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7  

三 docker安装 redis 并启动

首先拉取镜像

 $ docker pull redis:latest  

查看本地是否存在redis镜像

 $ docker images  

启动镜像

 $ docker run -itd --name redis-test -p 6379:6379 redis  

参数说明:

-p 6379:6379 :映射容器服务的 6379 端口到宿主机的 6379 端口。外部可以直接通过宿主机ip:6379 访问到 Redis 的服务。

备注:密码启动

 docker run --name redis -p 8001:6379 -d --restart=always redis:latest redis-server --appendonly yes --requirepass "123456"  

文章来源:智云一二三科技

文章标题:java开发必备的docker基础知识

文章地址:https://www.zhihuclub.com/186708.shtml

关于作者: 智云科技

热门文章

网站地图