Docker的安装与使用

一.docker是什么?   

         Docker是一种轻量级、可移植、自管理的容器技术,它改变了传统的应用部署方式,提高了应用的可移植性、可伸缩性和可管理性,成为了现代云计算和微服务架构的重要组成部分。        

        Docker主要包括:
        镜像(image):镜像就是一个模块,用来创建docker容器,一个模板可以创建多个容器。
        容器(container):容器是镜像创建的运行实例,docker使用容器来运行服务或者应用,程序或者服务都是运行在容器中。
        仓库(repository):集中存放镜像的厂所。

二.docker的安装

       1. 安装依赖包

                yum install -y yum-utils device-mapper-persistent-data lvm2
                该依赖需要在root用户下安装,切换 root用户可以使用 su密令,输入密码进行切换

        2.添加docker的软件包源

                yum-config-manager --add-repo  https://download.docker.com/linux/centos/docker-ce.repo
                查看版本列表
                yum list docker-ce --showduplicates | sort -r

        3.安装Docker应用

                yum install -y docker-ce --allowerasing

        4.配置镜像源

                添加和修改镜像源文件

                vi /etc/docker/daemon.json

  {
       "registry-mirrors":["https://registry.docker-cn.com"]
                
  }

          5.启动docker服务

                systemctl start docker

          6.查看是否安装成功

                    docker version

                出现docker版本信息表示安装成功!

           7.使用helloworld示例

                     docker run hello-world     

三:docker常用密令汇总

        1.启动服务类

                启动docker: systemctl start docker

                停止docker: systemctl stop docker

                重启docker: systemctl restart docker

                查看docker状态: systemctl status docker

                开机启动: systemctl enable docker

         2.镜像密令

                查看本机安装的镜像:docker images

                搜索镜像:docker search 镜像名称

                拉取镜像:docker pull 镜像名称

                拉取指定版本的镜像:docker pull 镜像名称:镜像版本号

                查看镜像/容器所占的空间:docker system df

                删除镜像: docker rmi -f 镜像名称/镜像ID

                删除多个镜像:docker rmi -f 镜像名1 镜像名2

                删除全个镜像:docker rmi -f $(docker image -qa)

         3.容器命令

                启动交互式容器:docker run [OPTIONS] IMAGE [COMMAND] [ARG...]

                       这里是一些常用的选项:

        -d:后台运行容器并打印容器ID;

        -i:以交互模式运行容器,通常与 -t 同时使用;

        -t:分配一个伪终端,通常与 -i 同时使用;

        --name:为容器指定一个名称;

        -p:将容器端口发送到主机;

        -v:绑定挂载卷。

                停止容器:docker stop 容器id/容器名称

                强制停止容器:docker kill 容器ID/容器名称

                启动已经停止的容器:docker start 容器ID/容器名称

                重启容器:docker restart 容器ID/容器名称

                删除停止的容器:docker rm 容器ID/容器名称

                强制删除 docker rm -f 容器ID/容器名称

                列出当前正在运行的所有容器:docker ps [OPTIONS]

                        OPTIONS说明(常用):  
                        -a :列出当前所有正在运行的容器+历史上运行过的
                        -l :显示最近创建的容器。
                        -n :显示最近n个创建的容器。
                        -q :静默模式,只显示容器编号。
                        无参数:直接列出当前正在运行的所有容器

                启动守护式容器: docker run -d 容器名  

                        -d:指定容器的后台运行模式,有的容器可以指定后台运行,有的容器不可以。

                 查看运行中容器的日志:docker logs 容器ID

                 查看容器中运行的进程:docker top 容器ID

                 查看容器内部细节:docker inspect  容器ID

                 进入正在运行的容器并以命令行交互:docker exec -it 容器ID /bin/bash

                        exec 是在容器中打开新的终端,并且可以启动新的进程 用exit退出,不会导致容

                器的停止。

                重新进入容器:docker attach 容器ID/容器名称

                          attach 直接进入容器启动命令的终端,不会启动新的进程 用exit退出,会导致容

                器的停止。

                退出并停止容器:在容器中执行 exit

                退出但不停止容器:在容器中操作 ctrl + p + q

                容器导出当前主机:docker export 容器ID > 文件名.tar 默认导入到当前的文件目录下

                容器导入主机的docker:cat 文件名.tar | docker import - 镜像用户/镜像名:镜像版本号

四:在docker容器中安装常用的软件

          1.容器中安装jdk8

                    1.查询jdk8的镜像

                             docker search openjdk:8

                    2.下载镜像到本地

                            docker pull openjdk:8

                     3.查看镜像是否存在

                             docker images openjdk:8

                     4.运行容器

                             docker run --name myjdk openjdk:8

                      5.进入容器

                              docker exec -it 容器ID /bin/bash/        

                     6.容器中查看jdk版本

                              java version

                      7.退出并容器:

                               exit   

                          退出不关闭容器:

                               ctrl +p + q                     

           2.容器中安装mysql

                        1.查询镜像

                                docker search mysql:8

                         2.下载镜像到本机

                                docker pull mysql:8

                         3.查看本机是否存在镜像

                                docker images mysql:8

                          4.运行容器并挂载数据到本机

                                docker run --name mysql8

                                 -p 3306:3306

                                 -v /usr/local/mysql/datadir:/var/lib/mysql 

                                 -v /usr/local/mysql/my.cnf/:/etc/my.cnf/

                                 -e  MYSQL_ROOT_PASSWORD=1234
                                 -d mysql:8
                               本机数据挂载的位置:/usr/local/mysql/datadir
                               本机配置文件挂载位置:/usr/local/mysql/my.cnf

                            5.进入容器内

                                docker exec -it mysql8 /bin/bash

                              6.登录数据库

                                mysql -uroot -p 输入密码

                                修改认证方式,开启远程访问

                                ALTER USER root@'%' IDENTIFIED WITH mysql_native_password

                                BY '1234‘

                                flush privileges;

                              7.退出mysql

                                exit

                              8.退出关闭容器:

                                 exit   

                                 退出不关闭容器:

                                 ctrl +p + q                 

        3.docker安装redis

                        1.查询docker

                                docker search redis

                        2.下载镜像到本地

                                docker pull redis

                        3.查看镜像是否存在

                                dokcer images redis

                        4.运行容器并挂载数据到本地

                                docker run 

                                -- name redis

                                 -p 6379:6379

                                -v /usr/local/redis/data:/data

                                -v /usr/local/redis/redis.conf:/etc/redis/redis.conf

                                -d redis redis-server /etc/redis/redis.conf

                                 --appendonly yes

                                 数据挂载位置: /usr/local/redis/data  

                                 配置文件挂载位置: /usr/local/redis/redis.conf     

                           5.进入容器内

                                docker exec -it redis /bin/bash

                           

                           6.退出关闭容器:

                                 exit   

                                 退出不关闭容器:

                                 ctrl +p + q          

        4.docker安装nginx

                

                        

         

        

        

        

  • 31
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

JAVA海洋里的小鱼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值