博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
安装docker以及docker常用命令
阅读量:4164 次
发布时间:2019-05-26

本文共 4286 字,大约阅读时间需要 14 分钟。

 

 

(1)查看centos版本;

Docker 要求CentOS系统的内核版本最低3.10            

 (2)若版本低于 3.10  则更新                                   

 

(3) 安装docker       yum install docker                                

                                      

 (4)启动docker

                                          

                                         

(5)设置docker开启则启动

(6)停止docker 命令                      

 

配置完镜像加速后:

1.通知systemd重载此配置文件;

systemctl daemon-reload
2.重启docker服务
systemctl restart docker 

(7)docker 安装MySQL

       执行 docker search 关键字            去docker hub上检索镜像的详细信息,如镜像的TAG。 会得到一个镜像列表

   拉取docker pull   镜像名:tag                        tag是可选的,tag表示标签,多为软件的版本,默认是latest 

 

列表         docker images           查看所有本地镜像 

删除  docker rmi image-id   删除指定的本地镜像

若容器已经在运行,请先删除容器,再删除镜像。

容器操作:

运行docker容器: 

docker run --name  mytomcat -d  tomcat:latest   

注意这里还不能通过外部的 8080 端口访问,因为docker容器中启动的8080端口号不是虚拟机的8080端口号,需要映射才能完成操作。需要进行一下操作,启动Tomcat  ,然后在浏览器中输入 localhost:虚拟机端口号   就可以方法 Tomcat 主页。

 

查看防火墙状态:  service firewalld status

临时关闭防火墙: service firewalld stop

 

启动MySQL

添加端口映射,外部才能访问。

[root@localhost docker]# docker run -p 3306:3306 --name mydata -e MYSQL_ROOT_PASSWORD=root -d mysql:5.6.462d000afd66abda1b0acdc316dc3413780e0bb508f94787575a4080de1d641f02

查看已经安装的docker镜像的基础信息: docker inspect  images-name:tag

[root@localhost ~]# docker inspect mysql:5.6.46

 

容器操作:运行docker run--name 容器名-i  -t -p 主机端口:容器端口 -d  -v  主机目录:容器目录:ro  镜像ID或镜像名:TAG#--name 指定容器名,可自定义,不指定自动命名#-i以交互模式运行容器#-t分配一个伪终端,即命令行,通常-it组合来使用#-p指定映射端口,讲主机端口映射到容器内的端口#-d后台运行容器#-V指定挂载主机日录到容器日录,默认为rw读写模式,ro表示只读
进入到容器里面:# docker exec -it 容器名或容器id  /bin/bash找到Tomcat容器配置文件 # cd  /docker-java-home/jre/lib/security/               -----》java.security验证文件改为  securerandom.source=file:/dev/./urandomexit 退出容器删除容器:  docker rm -f 容器名或容器id进入root目录  #cd /root/上传文件   # rz快速启动容器 # docker run --name 自定义容器名 -p 80:8880 -v  /root/java.security:/docker-java-home/jre/lib/security/java.security -d tomcat:latest查看Tomcat日志 # docker logs 自定义容器名

 

在docker中部署 springboot 项目在jar包路径下创建Dockerfile文件vi Dockerfile#指定基础镜像,本地如果没有会从 dockerhub 上 pull 下来FROM openjdk:8#把可执行jar包复制到基础镜像的根目录下ADD learn.jar /learns.jar#镜像要暴露的端口,如要使用端口,在执行docker run命令时使用-p生效EXPOSE 80#在镜像运行为容器后执行的命令    ENTRYPOINT ["java","-jar","/learns.jar"]使用dockerbuild命令构建镜像,基本语法docker build -f  Dockerfile -t  mylearn/mypro:v1 .#-f指定Dockerfile文件的路径#-t指定镜像名字和TAG#.指当前日录,这里实际上需要一个上下文路径运行容器# docker run --name 自定义容器名称  -p 80:80 -d --restart=always mylearn/pro:v1#加上--restart=always  表示此容器开机启动,只要docker也设置了开机自启,docker不死

构建镜像:

构建镜像:【方式一】通过commit的方式创建镜像【将容器保存为镜像】docer commit  容器名/ 容器id  自定义镜像名称【方式二】通过dockerfile的方式创建镜像vim  DockerfileFROM nginxADD ./ /user/share/nginx/html/vim index.html    【在html文件中写内容】docker build -t m2 .docker run -d -p 100:80 m2【方式三】通过docker save 指令完成将一个镜像保存到一个文件里 docker save 镜像id/镜像名  > test.tardocker load < test.tar-------------------------------------------------------------------------------d 在run后面加上-d参数,则会创建一个守护式容器在后台运行(这样创建容器后不会自动登录容器,如果只加-i-t两个参数,创建后就会自动进去容器)-p 指定端口映射-v 映射文件(将宿主机和容器的目录或者文件做映射)--name 指定容器运行起来后的名称    docker ps  中的 【names】就是我们自定义的名字       【name】是镜像的名称-i 表示运行容器-t 表示容器启动后会进入其命令行加入这两个参数后,容器创建就能登录进去查看正在运行的容器 docker ps  查看所有容器docker ps -a查看最后一次运行的容器docker ps -l查看停止的容器docker ps -f status=exited(1)交互式方式创建容器docker run -it --name=容器名称 镜像名称:标签   /bin/bash这时我们通过ps命令查看,发现可以看到启动的容器,状态为启动状态退出当前容器exit(2)守护式方式创建容器(后台运行):docker run -di --name=容器名称 镜像名称:标签登录守护式容器方式:docker exec -it 容器名称(或者容器ID)/bin/bash进入到容器中:docker exec -it  容器名称/容器id  /bin/bash【外部】复制文件到【容器】中去:docker cp /外部目录/外部文件 容器名:/容器目录/文件名【若最后写了文件名,就以最后的文件名为主】【容器】复制文件到【外部】:docker cp 容器名:/容器目录/容器中的文件   /外部目录/文件名【若最后写了文件名,就以(目录挂载)文件映射:docker run  -di -v /us/local/myhtml:/user/local/myhtml --name=自定义容器名  镜像名:版本号docker run -di --name=mytomcat  -p 9000:8080 -v  /usr/local/webapps:/usr/local/tomcat/webapps tomcat:7-jre7docker run -di --name=mynginx -p 90:80 -v /usr/html:/usr/share/nginx/html nginx:1.17.5查看容器所有信息:docker inspect 容器名docker inspect --format=`{
{.Networksettings.IPAddress}}`nginx :cd /etc/nginx/nginx.conf这里面包含nginx下的所有配置include /etc/nginx/conf.d/*.confcd conf.ddircat default.conflocation { root /usr/share/nginx/html; index index.html index.htm; }将当前目录下的dist文件夹 改名为htmlmv dist html 命令 作用FROM image_name:tag 定义了使用哪个基础镜像启动构建流程MAINTAINER user_name 声明镜像的创建者ENV key value 设置环境变量(可以写多条)RUN command 是Dockerfile的核心部分(可以写多条)ADD source_dir/file 将宿主机的文件复制到容器内,如果是一个压缩文件,将会在复制后自动解压dest_dir/file COPY souce_dir/file 和ADD相似,但是如果有压输文件并不能解压 dest_dir/file WORKDIR path_dir 设置工作目录

 

转载地址:http://vqxxi.baihongyu.com/

你可能感兴趣的文章