Docker 入门

Docker如何入门:

1. 安装Docker
  • Windows/Mac
    下载并安装Docker Desktop,安装完成后启动它,你会看到一个鲸鱼图标,点击可以查看Docker引擎的状态和进行基本操作。

  • Linux
    以Ubuntu为例,使用终端安装Docker Engine:

    sudo apt-get update
    sudo apt-get install docker-ce docker-ce-cli containerd.io
    

    安装完成后,启动并加入用户到docker组,以便无需sudo权限就能运行docker命令:

    sudo systemctl start docker
    sudo usermod -aG docker $USER
    newgrp docker
    
2. Docker基础概念
  • Docker镜像
    Docker镜像是一个只读模板,用于创建Docker容器。例如,我们从Docker Hub拉取官方的Ubuntu镜像:

    docker pull ubuntu
    docker images
    

    这里的docker pull命令用于从远程仓库下载镜像,docker images命令则列出本地的所有镜像。

  • Docker容器
    通过镜像创建并运行一个交互式的Ubuntu容器:

    docker run -it ubuntu bash
    

    此处docker run命令创建并启动了一个新的Ubuntu容器,并进入bash shell。 -it参数表示分配一个伪TTY并打开标准输入。

  • 数据卷
    创建一个使用数据卷的容器,让数据持久化:

    docker run -v $(pwd)/data:/app/data -d --name my_container some_image
    

    这里-v参数挂载宿主机当前目录下的"data"目录到容器内的"/app/data"路径,数据将在宿主机和容器之间共享。

  • 网络配置
    设置容器对外暴露端口:

    docker run -d -p 8080:80 nginx
    

    这里-p参数将宿主机的8080端口映射到容器的80端口,外部可通过宿主机的8080端口访问到nginx容器的服务。

3. Dockerfile和构建镜像

创建一个简单的Dockerfile,例如:

FROM ubuntu:latest
RUN apt-get update && apt-get install -y curl
CMD ["curl", "http://ipinfo.io/ip"]

然后在Dockerfile所在目录下构建镜像:

docker build -t my_custom_image .
4. Docker Compose

创建一个简单的docker-compose.yml文件,用于定义一个多容器应用:

version: '3'
services:
  web:
    image: nginx
    ports:
      - "8080:80"
  db:
    image: postgres
    environment:
      POSTGRES_PASSWORD: example

使用Docker Compose启动应用:

docker-compose up -d

接下来,可以深入学习Docker的更高级特性,如Swarm Mode、Kubernetes集成、Docker安全策略等,并结合实际项目进行实践。同时,阅读官方文档、参与社区讨论和观看视频教程,都能加速你的学习进程。

相关推荐

  1. docker入门

    2024-04-08 07:04:03       15 阅读
  2. Docker入门

    2024-04-08 07:04:03       15 阅读
  3. docker入门

    2024-04-08 07:04:03       22 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-08 07:04:03       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-08 07:04:03       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-08 07:04:03       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-08 07:04:03       20 阅读

热门阅读

  1. Git(8)之分支间同步特定提交

    2024-04-08 07:04:03       10 阅读
  2. 【Linux】在 Linux 上模拟网络故障

    2024-04-08 07:04:03       12 阅读
  3. Prompt提示词——常见的Prompt框架

    2024-04-08 07:04:03       15 阅读
  4. EXCEL学习笔记

    2024-04-08 07:04:03       15 阅读
  5. Mybatis学习笔记:多表关联,懒加载,缓存

    2024-04-08 07:04:03       12 阅读
  6. C语言正则表达式 regnext regreplace regreplaceAll

    2024-04-08 07:04:03       11 阅读
  7. uniapp使用vuex

    2024-04-08 07:04:03       15 阅读
  8. 一点点安全资料:数通知识扩展

    2024-04-08 07:04:03       15 阅读
  9. LeetCode71

    2024-04-08 07:04:03       10 阅读