前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Docker命令全解及docker file编写实例

Docker命令全解及docker file编写实例

作者头像
用户7353950
发布2024-04-03 21:16:02
710
发布2024-04-03 21:16:02
举报
文章被收录于专栏:IT技术订阅IT技术订阅

Docker命令全解 镜像操作 - `docker search`: 搜索Docker Hub上的镜像。   $ docker search nginx - `docker pull`: 从Docker Hub拉取指定镜像和版本。   ```bash   $ docker pull nginx:latest   ``` - `docker push`: 将本地镜像推送到Docker Hub或其他仓库。   $ docker push repo1:v1.0 - `docker images`: 查看本地所有镜像。   $ docker images - `docker rmi`: 删除一个或多个镜像。   $ docker rmi mynginx:1.0 mynginx:2.0 - `docker image prune`: 删除未标记或未使用的镜像。   $ docker image prune - `docker tag`: 给镜像添加新的标签。   $ docker tag mynginx:1.0 nginx1 - `docker save`: 将镜像保存为.tar文件。   $ docker save mynginx:1.0 > mynginx_v1.tar - `docker load`: 从.tar文件中载入镜像。   $ docker load -i mynginx_v1.tar - `docker commit`: 根据容器创建新的镜像。   $ docker commit [CONTAINER] [new_image_name]

容器操作 - `docker create`: 创建一个新的容器。   $ docker create --name mynginx_1 -it -p 8080:80 mynginx:1.0 - `docker start`: 启动一个已创建的容器。   $ docker start mynginx_1 - `docker run`: 创建并启动一个新的容器。   $ docker run --name mynginx_1 -it -p 8080:80 mynginx:1.0 - `docker ps`: 查看正在运行的容器。   $ docker ps - `docker ps -a`: 查看所有容器,包括停止运行的。   $ docker ps -a - `docker stop`: 停止一个正在运行的容器。   $ docker stop mynginx_1 - `docker restart`: 重启一个容器。   $ docker restart mynginx_1 - `docker rm`: 删除一个容器。   $ docker rm mynginx_1 - `docker container prune`: 删除已停止运行的所有容器。   $ docker container prune - `docker cp`: 从容器复制文件到宿主机,或从宿主机复制文件到容器。   $ docker cp myweb_1:/index.html index.html - `docker exec`: 在运行的容器中执行命令。   $ docker exec -it mynginx_1 /bin/bash - `docker port`: 查看容器端口映射。   $ docker port mynginx_1 - `docker diff`: 查看容器内已修改的文件。   $ docker diff mynginx_1 - `docker logs`: 查看容器日志。   $ docker logs web - `docker top`: 查看容器内运行的进程。   $ docker top web - `docker inspect`: 查看容器或镜像的底层信息。   $ docker inspect web - `docker stats`: 查看运行容器的统计数据。   $ docker stats

网络操作 - `docker network`: 管理Docker的网络设置。   $ docker network create mynet   $ docker network connect mynet mycontainer - `docker network rm`: 删除一个网络。   $ docker network rm mynet Dockerfile编写实例 Dockerfile是一个文本文件,包含了一系列命令,用于定义如何构建一个新的Docker镜像。以下是一个简单的Dockerfile示例,用于部署一个Python Web应用: ```Dockerfile # 使用官方Python 3.8.3版本的Alpine Linux作为基础镜像 FROM python:3.8.3-alpine # 设置工作目录 WORKDIR /usr/src/app # 设置环境变量,确保Python输出直接打印到控制台,不会被缓存 ENV PYTHONDONTWRITEBYTECODE 1 ENV PYTHONUNBUFFERED 1 # 复制当前目录下的所有文件到工作目录下 COPY . . # 使用Alpine Linux的包管理器安装PostgreSQL的依赖 RUN apk update && \     apk add postgresql-dev gcc python3-dev musl-dev # 复制entrypoint.sh到工作目录 COPY ./entrypoint.sh . # 设置容器启动时执行的命令,这里的entrypoint.sh脚本会启动Web应用 ENTRYPOINT ["/usr/src/app/entrypoint.sh"] ``` 在这个Dockerfile中,我们使用了`FROM`指令来指定基础镜像,`WORKDIR`来设置工作目录,`COPY`来复制文件,`RUN`来执行命令,`ENV`来设置环境变量,以及`ENTRYPOINT`来指定容器启动时执行的命令。 请注意,这只是一个示例,实际的Dockerfile可能会根据您的具体需求有所不同。您可以根据需要添加更多的指令,如`EXPOSE`来暴露端口,`VOLUME`来创建数据卷等。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2024-03-31,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 IT技术订阅 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档