博客
关于我
Docker 基础
阅读量:469 次
发布时间:2019-03-06

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

Docker 基础与实战

什么是 Docker

Docker 是一种基于 Linux 内核的操作系统层面的虚拟化技术,通过封装隔离的进程实现轻量级的容器化部署。与传统虚拟化技术不同,Docker 将容器视为宿主机的普通进程,能够在宿主机和其他容器之间实现资源的精细隔离。

Docker 的优势

  • 一致性:Docker 提供统一的运行环境,减少开发、测试、生产之间的环境差异。
  • 快速部署:通过容器化技术,Docker 可以加速打包、测试和部署流程。
  • 轻量化:相比虚拟化技术,Docker 的容器更小且运行效率更高。
  • Docker 安装

    安装 Docker 前,确保你的 CentOS 系统内核版本支持 Docker。执行以下命令查看内核版本:

    uname -r

    确保 CentOS 系统已更新至最新版本:

    yum update

    卸载旧版本 Docker 并清理残留文件:

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

    安装 Docker 仓库并启用:

    yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

    安装 Docker 的最新版本:

    yum install docker-ce

    启动 Docker 服务并验证安装:

    systemctl start docker
    docker run hello-world

    Docker 重要命令

    镜像相关命令

  • 搜索镜像
  • docker search nginx
    1. 下载镜像
    2. docker pull nginx:1.7.9
      1. 列出镜像
      2. docker images
        1. 删除镜像
        2. docker rmi hello-world

          容器相关命令

        3. 新建容器
        4. docker run -d -p 8080:80 nginx
          1. 停止容器
          2. docker stop 5d034c6ea010
            1. 重启容器
            2. docker restart 5d034c6ea010
              1. 进入容器
              2. docker exec -it 5d034c6ea010 /bin/bash
                1. 删除容器
                2. docker rm 5d034c6ea010
                  1. 数据拷贝
                  2. docker cp 5d034c6ea010:/etc/nginx/nginx.conf /dockerData/nginx/conf/nginx.conf

                    Docker 实战

                    使用 Docker 运行 Nginx

                    docker run -d -p 8081:80 --name nginx --rm nginx

                    挂载配置文件

                    进入容器并挂载配置文件:

                    docker exec -it 9123b67e428e /bin/bash

                    导出配置文件:

                    docker cp nginx:/etc/nginx/nginx.conf /dockerData/nginx/conf/nginx.conf
                    docker cp nginx:/etc/nginx/conf.d /dockerData/nginx/conf/conf.d

                    创建默认主页

                    在宿主机创建文件:

                    cd /dockerData/nginx/www
                    vim index.html

                    访问服务器地址:

                    http://192.168.136.129:8081/

                    使用 Dockerfile 构建镜像

                    FROM openjdk:8-jdk-alpine
                    VOLUME /tmp
                    EXPOSE 8080
                    COPY docker-demo.jar app.jar
                    ENTRYPOINT ["java", "-Djava.security.egd=file:/dev/./urandom", "-jar", "/app.jar"]

                    构建镜像并运行:

                    docker build -t springboot:v1.0 .
                    docker run -v /app/docker/logs:/logs -p 8080:8080 --rm --name springboot springboot:v1.0

                    访问 API:

                    http://192.168.136.129:8080/say

                    查看日志:

                    tail -100f /app/docker/logs/docker-demo-info.log

                    总结

                    通过以上步骤,你可以快速上手 Docker,利用其优势进行轻量化部署和管理。Docker 的高效性和可扩展性使其成为现代应用开发和部署的理想选择。

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

    你可能感兴趣的文章
    MySQL8修改密码的方法
    查看>>
    Mysql8在Centos上安装后忘记root密码如何重新设置
    查看>>
    Mysql8在Windows上离线安装时忘记root密码
    查看>>
    MySQL8找不到my.ini配置文件以及报sql_mode=only_full_group_by解决方案
    查看>>
    mysql8的安装与卸载
    查看>>
    MySQL8,体验不一样的安装方式!
    查看>>
    MySQL: Host '127.0.0.1' is not allowed to connect to this MySQL server
    查看>>
    Mysql: 对换(替换)两条记录的同一个字段值
    查看>>
    mysql:Can‘t connect to local MySQL server through socket ‘/var/run/mysqld/mysqld.sock‘解决方法
    查看>>
    MYSQL:基础——3N范式的表结构设计
    查看>>
    MYSQL:基础——触发器
    查看>>
    Mysql:连接报错“closing inbound before receiving peer‘s close_notify”
    查看>>
    mysqlbinlog报错unknown variable ‘default-character-set=utf8mb4‘
    查看>>
    mysqldump 参数--lock-tables浅析
    查看>>
    mysqldump 导出中文乱码
    查看>>
    mysqldump 导出数据库中每张表的前n条
    查看>>
    mysqldump: Got error: 1044: Access denied for user ‘xx’@’xx’ to database ‘xx’ when using LOCK TABLES
    查看>>
    Mysqldump参数大全(参数来源于mysql5.5.19源码)
    查看>>
    mysqldump备份时忽略某些表
    查看>>
    mysqldump实现数据备份及灾难恢复
    查看>>