本文作者:信先生

Docker基础学习复盘

信先生 2023-04-06 790
Docker基础学习复盘摘要: Docker,是Linux容器管理软件,容器内部可以独立产生应用pid,端口和网络,容器之间相互独立互不影响。注意此文章默认已经安装好Windows版本docker客户端,未对安装...

Docker,是Linux容器管理软件,容器内部可以独立产生应用pid,端口和网络,容器之间相互独立互不影响。

注意此文章默认已经安装好Windows版本docker客户端,未对安装和界面进行说明,如果你未安装客户端,部分内容将难以阅读

docker官方地址:https://www.docker.com

docker镜像地址:https://hub.docker.com

Docker镜像

创建容器前,必须先拥有一个docker镜像,通过命令:docker run运行容器同时,并拉取镜像

docker run -d -p 6379:6379 --name redis redis:latest

上面是开启一个名为:redis的容器,使用镜像:redis:latest。

run命令执行时会自动识别是否存在redis:latest镜像

不存在拉取docker官方中标签(tag)为latest的redis镜像,并运行redis容器

此处为单独拉取docker官方镜像名为python版本为3.10.11为例:
docker pull python:3.10.11
镜像版本tag前往docker官方镜像地址查看

Docker容器

容器(containers)可以直接点击镜像(images)列表中启动按钮生成,此方法生成的容器为随机随机名字

以下是命令生成容器,可以自定义容器名称,下面生成一个名为:python-test的容器

docker run --name python-test python:3.10.11

启动容器命令:

docker start python-test

无前台常驻任务时,容器运行完程序将自动停止关闭

Docker镜像构建

创建目录D:/docker/python,创建index.py。写入print('docker python')

切换至应用目录,创建dockerfile文件(无后缀)

写入以下内容

#导入基础环境
FROM python:3.10.11

#把当前目录下(注意有个.)的内容复制到容器/www/python目录
ADD . /www/python

#容器中应用工作目录设置为/www/python
WORKDIR /www/python

#容器启动时执行index.py
CMD python index.py

创建dockerfile后,运行命令(切换至项目目录运行)

docker build -t mypython:v1 .

构建一个名为mypython版本标签为v1的镜像,注意命令最后一个(.)点,成功后将出现在images列表中

Docker容器挂载目录

由于直接修改现有容器需要停掉docker服务,修改配置文件,感觉比较麻烦,所以建议创建容器时一并设置挂载目录

创建容器时,添加挂载目录命令-v

docker run --name python-app -v D:/docker/python:/www/python -d mypython:v1 (这里使用的是上面创建的镜像)

本地目录绝对路径:挂载容器目录路径

-v后面可以直接传入名称,数据将挂载到Volumes上,名称就为传入的名称,可以由docker进行管理

上传镜像hup

注册docker账号

运行命令

docker login -u username(docker用户名)

运行后输入密码显示成功,运行

docker tag mypython:v1 username/project

tag后面为本地镜像名称,后面为hup上项目名称,然后运行

docker push username/project


赞(0)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏

阅读
分享