本文基于个人实践所写,有误请指出。
新开台机器,免不了一番研究折腾,但对于新手来说,弄得系统重装只需要几分钟。而docker等虚拟化技术的使用,能帮助避免这个问题。
Docker简介
Docker相当于我们平时常说的虚拟机,通过下载并使用对应的镜像(如win10的操作镜像),就称为一个容器(一个虚拟机),以此来隔离原生系统。在进入容器(虚拟机)后,你在容器中的任何操作都不会影响你的原生系统。
安装
安装完成后记得启用Docker,或者安装后直接重启主机也行。
-
Debian&Ubuntu
apt install docker
或者使用snap管理工具:apt install snapd
snap install docker
(使用snap安装的Docker文件与apt安装的Docker文件位置不相同) -
Centos系列
dnf install docker
或者yum install docker
简单的使用介绍与实例
docker run -itd -p 4233:2333 \
-v /home/web/root:/root/ \
-v /home/web/nginx/ssl:/root/ssl \
--name test \
--hostname test \
--network web \
--restart=always \
ubuntu:latest
上面这段代码启动了一个:有交互终端的、可在后台运行的、6233端口映射到原主机6233端口的、随docker自动重启的、当前最新的ubuntu镜像系统。
这段代码包含了大部分启动docker容器时可能会使用的参数,下面逐一说明。
-
启动及启动参数
docker run
:使用image(镜像)启动一个容器-itd
:使用参数-it
启动一个交互终端(bash shell等)。-d
使该容器后台运行。-p 4233:2333
:占用主机一个4233
端口使其与容器端口2333
绑定,也称之为端口映射。映射后可以通过主机的4233
端口访问容器内的2333
端口。当你在容器内的2333端口搭建了一个网站,你可以通过ip:4233
访问你容器内的网站。-v /home/web/root:/root/
:将容器内的/root/
下的所有文件映射到主机内的/home/web/root/
文件夹内。当在主机中操作映射文件时,容器中对应的文件也会被改变。--name test
:容器命名为test。(可用docker ps -a
命令查看)--hostname test
:容器内的主机名命名为test。(即容器内的用户名)--network web
:将容器连接到名为web的docker网络当中。需先创建docker网络docker network create web
。可以使不同容器相互连接。--restart=always
:容器停止后(意外停止等),自动重启容器。ubuntu:latest
:容器使用的镜像。
-
常用docker命令
docker run
:启动容器。docker ps
:查看正在运行的容器。docker ps -a
:查看全部容器。docker stop test
:停止test容器。(类似关机)docker rm test
:删除test容器。(删除容器、容器内文件)docker pull ubuntu:latest
:拉取(下载)最新的ubuntu稳定版镜像。docker images
:列出已有镜像。docker rmi xxxxxxx
:删除id为xxxxxxx
的镜像。需先删除用到该镜像的容器。docker network --help
:docker网络相关操作。
至此已经囊括docker的基础使用方法。你可以使用docker启动nginx、搭建网站、各类应用、挖矿 等等,且避免影响原主机环境。