下载什么网站做吃的,wordpress 开启多站点,华为网站建设的目标是否明确,晋江论坛匿名区最近需要将项目做成一个web应用并部署到多台服务器上#xff0c;于是就简单学习了一下docker#xff0c;做一下小小的记录。
1、简单介绍一下docker
我们经常遇到这样一个问题#xff0c;自己写的代码在自己的电脑上运行的很流畅#xff0c;在其他人电脑上就各种bug…最近需要将项目做成一个web应用并部署到多台服务器上于是就简单学习了一下docker做一下小小的记录。
1、简单介绍一下docker
我们经常遇到这样一个问题自己写的代码在自己的电脑上运行的很流畅在其他人电脑上就各种bug这其中的问题肯定是方方面面的比如环境依赖版本问题操作系统不同等。于是需要重新在其他电脑或服务器上配置环境很是麻烦。
因此需要这样一种软件让我们只需要配置一次环境后就可以在各个平台上运行不存在缺少环境依赖版本以及操作系统等问题。这就是docker存在的意义。
你可以这样理解当代码能在你电脑上跑通时docker相当于把你整个电脑上的东西一起打包发送给别人因此就不存在版本操作系统等问题。但是可能存在运行内存过低的问题毕竟计算资源这玩意儿不能打包。
docker的下载安装网址http://www.docker.com。如果是windows系统安装dockertodesktop。
2、镜像image与容器container
**镜像**Docker将应用程序及其所需的依赖、函数库、环境、配置等文件打包在一起称为镜像。
容器镜像中的应用程序运行后形成的进程就是容器只是Docker会给容器进程做隔离对外不可见。
通俗来说我们需要从中下载镜像[dockerhub]](https://hub.docker.com/)然后通过容器创建镜像根据需求手动diy这个容器让其能完成我们的目标需求。在对容器进行diy的过程比如安装python并不会对原始镜像产生影响。
因此由同一个镜像生成的容器是相互独立的安装的软件不会互通。有点像类与对象的关系通过镜像new一个容器。
以django部署到docker为例大致步骤为
下载ubuntu镜像通常会使用linux操作系统的镜像根据镜像创建容器进入容器安装需要的环境比如anacondapython以及各种包上传本地文件到容器测试代码是否能跑通反复修改将容器生成一个新的镜像发布到dockerhub供别人下载
以上就是我部署django的大致流程还有很多细节没有涉及到比如容器开机自启动开放端口号等。
3、docker基本命令
3.1 帮助启动类命令
启动dockerlinux系统
systemctl start docker停止dockerlinux系统
systemctl stop docker 重启dockerlinux系统
systemctl restart docker查看docker状态linux系统
systemctl status docker开机启动linux系统
systemctl enable docker查看docker概要信息
docker info查看docker总体帮助文档
docker --help查看docker命令帮助文档
docker 具体命令 --help (例如docker exec --help查看exec命令的帮助文档)3.2 镜像命令
列出本地主机上的镜像
docker imagesREPOSITORY:表示镜像的仓库源
TAG镜像的标签版本号
IMAGE ID:镜像ID
CREATED镜像创建的时间
SIZE镜像大小在dockerhub上查找镜像
docker search [OPTIONS] 镜像名字例如想要查找ubuntu镜像 默认是最多展示25个镜像可以通过–limit来指定数量。例如
docker search --limit 5 ubuntu下载镜像
docker pull 镜像名字[:TAG]没有TAG就是最新版latest例如
docker pull ubuntu删除镜像
docker rmi 某个XXX镜像名字ID删除单个docker rmi -f 镜像ID
删除多个docker rmi -f 镜像名1:TAG 镜像名2:TAG
删除全部docker rmi -f $(docker images -qa)虚悬镜像了解
仓库名、标签都是 的镜像俗称虚悬镜像dangling image。
3.3 容器命令
新建启动容器
docker run [OPTIONS] IMAGE [COMMAND][ARG...]OPTIONS 常用说明
参数说明–name“容器新名字”为容器指定一个名称-d后台运行容器并返回容器ID也即启动守护式容器-i以交互模式运行容器-t为容器重新分配一个伪输入终端也即启动交互式容器-P随机端口映射-p指定端口映射-p 8080:80 -p 443:443
例如为上文中的ubuntu镜像创建容器
docker run -it --nametest ubuntu列出当前所有正在运行的容器
docker ps [OPTIONS]OPTIONS 常用说明
参数说明-a列出当前所有正在运行的容器历史上运行过的容器-l显示最近创建的容器-n显示最近n个创建的容器-q静默模式只显示容器编号在上图中的STATUS 一栏中Up表示容器正在运行。
退出容器
两种退出方式
run进去容器exit退出容器停止run进去容器ctrlpq退出容器不停止
启动已停止运行的容器
docker start 容器ID或容器名重启容器
docker restart 容器ID或容器名重新进入容器
docker exec -it 容器ID或容器名 /bin/bash拷贝文件容器-主机
docker cp 容器ID:容器内路径 目的主机路径停止容器
docker stop 容器ID或容器名强制停止容器
docker kill 容器ID或容器名删除已停止的容器
docker rm 容器ID查看容器日志
docker logs 容器ID查看容器内运行的进程
docker top 容器ID查看容器内部细节
docker inspect 容器ID容器生成镜像
docker commit -m提交的描述信息 -a作者 容器ID 要创建的目标镜像名:[标签名]