栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

后端技术——Docker详解

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

后端技术——Docker详解

环境:

      操作系统:CentOS7

安装:
  1. 安装gcc

    yum -y install gcc
    
  2. 安装yum-utils包,设置稳定存储库。

    # 安装yum-utils包
    yum install -y yum-utils
    
    # 设置稳定存储库
    yum-config-manager --add-repo https://mirror.aliyun.com/docker-ce/linux/centos/docker-ce.repo
    
  3. 更新yum配置

    yum makecache fast
    
  4. 安装docker-ce

    yum  -y install docker-ce
    
  5. 启动docker

    systemctl start docker
    
  6. 配置加速镜像

    # 创建配置文件
    mkdir -p /etc/docker
    vi /etc/docker/daemon.json
    {"registry-mirror": ["http://hub-morro.c.163.com"]}
    ~
    ~
    
    # 重新加载配置文件
    systemctl daemon-reload
    
    # 重启docker
    systemctl restart docker
    
  7. 卸载docker

    # 卸载docker
    yum remove docker-ce
    
    # 删除文件
    rm -rf /var/lib/docker
    
Helloword程序
  1. 拉取并运行helloword

    docker run hellow-word
    
命令
  1. 镜像相关命令

    # 列出本机上的docker镜像
    docker images [参数]
    -a:   		列出所有
    -q:   		只显示id
    -digests:  	显示摘要信息
    -no-tronc:  显示完整信息
    
    
    # 搜索远程仓库中的docker镜像
    docker search [镜像名]
    
    
    # 拉取docker镜像
    docker pull [镜像名]
    
    
    # 推送docker镜像
    # 1 登录
    docker login --username=[用户名]
    # 2 tag标签对应
    docker tag [镜像ID] [远程仓库路径]:[远程版本]
    # 3 执行推送
    docker push [远程仓库路径]:[远程版本]
    
    
    # 删除本地docker镜像
    docker rmi [参数] [镜像ID]
    -f:   		强制删除
    
    
    # 提交到本地docker镜像仓库
    docker commit [参数] [容器ID]  [新镜像名]:[新版本]
    -m:   		提交说明
    -a:   		作者信息
    
    
  2. 容器相关命令

    # 创建并运行docker容器
    docker run [参数] [镜像名] [容器启动后执行的命令]
    -V:   		数据卷
    -d:   		后台运行
    -p:   		指定端口
    -P:   		随机端口
    -it:  		以交互方式打开终端
    --name:  	指定容器名字
    
    
    # 查看正在运行的docker容器
    docker ps [参数]
    -a:   		列出所有
    -l:   		显示最近创建的容器
    -n:   		显示最近创建的容器 (可以指定多少个)
    -q:  		只显示容器ID
    -no-tronc:  显示完整信息
    
    
    # 启动容器
    docker start [容器ID]
    
    
    # 重启容器
    docker restart[容器ID名]
    
    
    # 停止容器(正常停止)
    docker stop [容器ID]
    # 停止容器(直接停止)
    docker kill [容器ID]
    # 退出(在容器中执行)
    exit
    
    
    # 进入容器
    docker attach [容器ID]
    # 在容器执行命令并将结果返回给宿主机
    docker exec [容器ID] [命令]
    
    
    # 拷贝容器中的文件到宿主机
    docker cp [容器ID]:[路径]  [宿主机路径]
    
    
    # 删除容器
    docker rm [参数] [容器ID名]
    -f:   		强制删除
    
    
数据卷
  1. 主要作用:容器与宿主机之间的数据共享
    # 创建并运行docker容器并指定数据卷
    docker run 
    	-V [宿主机路径]:[容器内路径]
    	-V [宿主机路径]:[容器内路径]
     	helloword
    
Dockerfile
  1. 命令:
    # 由dockerfile构建docker镜像
    docker build -f dockerfile -t mydokerimage:1.0 .
    -f: 指定dockerfile文件路径
    -t: 镜像名与版本
    .:  最后以点结尾
    
  2. 关键字:
关键字说明
FROM基于哪个镜像进行构建
MAINTAINER镜像的作者
RUN容器构建时需要运行的命令
EXPOSE容器对外暴露的端口
WORKDIR默认进入的目录
ENV设置环境变量
ADD拷贝并解压文件到容器
COPY拷贝文件到容器
VOLUME设置数据卷
CMD指定容器启动时要运行的命令 只要最后一个会生效
ENTRYPOINT指定容器启动时要运行的命令 多个同时会生效
ONBUILD到构建一个基于本镜像的新镜像时会被调用
安装Tomcat
  1. 搜索tomcat镜像
    docker search tomcat
    
  2. 拉取tomcat镜像
    docker pull tomcat
    
  3. 运行tomcat
    docker run -p 8080:8080 tomcat
    
安装Mysql
  1. 搜索mysql镜像
    docker search mysql
    
  2. 拉取mysql镜像
    docker pull mysql:5.6
    
  3. 运行mysql
    docker run -p 3306:3306 --name mysql56
    	-V /mydir/mysql/conf:/etc/mysql/conf.d
    	-V /mydir/mysql/logs:/logs
    	-V /mydir/mysql/data:/var/lib/mysql
    	-e MYSQL_ROOT_PASSWARD=123456
    	-d 
    	mysql:5.6
    
安装Redis
  1. 搜索redis镜像
    docker search redis
    
  2. 拉取redis镜像
    docker pull redis:3.2
    
  3. 运行redis
    docker run -p 6379:6379--name redis32
    	-V /mydir/redis/data:/data
    	-V /mydir/redis/conf:/usr/local/etc/redis/redis.conf
    	-d 
    	redis:3.2 
    	redis-server /usr/local/etc/redis/redis.conf --appendonly=yes
    
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/450298.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号