kali安装docker、配置阿里云镜像加速、docker使用

1.需求

  • 最近须要用到docker比较多,遂安装使用下,第一次用docker搭建测试环境,不得不说,docker真香。期间遇到了比较多奇奇怪怪的问题,网上的教程也比较多比较乱,遂记录一下。

2.安装docker

apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D

echo 'deb https://apt.dockerproject.org/repo debian-stretch main' > /etc/apt/sources.list.d/docker.list

apt-get install apt-transport-https ca-certificates

apt-get update && sudo apt-get install docker-engine

systemctl start docker

3.配置阿里云镜像下载加速

4.若是发现没有docker-compose的话,能够按下面的方式安装

详见:https://github.com/docker/compose/releasesweb

curl -L https://github.com/docker/compose/releases/download/1.25.1-rc1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
注:用pip安装docker-compose的话貌似会遇到一些奇奇怪怪的问题

5.docker经常使用指令

  • 启动:systemctl start docker
  • 一键运行docker:docker-compose up -d,运行该命令须要当前目录下有docker-compose.yaml文件,通常支持docker一键部署的github项目下载下来只来会有这个文件。
  • 查看镜像:docker images
  • 查看容器:docker ps -a
  • 中止全部容器运行:docker rm $(docker ps -aq)
  • 删除全部镜像:docker rmi $(docker images -q),删除镜像前须要中止运行的容器
  • 容器重启:docker-compose restart,配置文件、代码修改或者版本更新(从Github拉下最新的代码),不须要从新build,只须要执行docker-compose restart
  • 数据持久化保存:将docker/data/mysql目录挂载到外部目录便可,通常支持一键部署的会将配置写在docker-compose.yaml文件里,本身build的话能够是-v ./docker/data/mysql/:/var/lib/mysql
  • 查看日志:docker-compose logs
  • 移除容器:docker-compose down -v
  • 注:
    • docker bulid和run用于建立单个镜像和容器,Dockerfile文件指定基础信息
    • docker-compose是多容器管理,也就是常说的容器编排,根据docker-compose.yml文件定义容器运行时属性,指明容器间依赖
    • 在实际的生产环境中,多容器的建立和管理使用K8S比较多

6.[补充]docker部署服务的几种方式

  • 1.根据公网上已有的镜像直接pull+run部署,例如某个webserevr
docker search webserevr
docker pull jsda**/webserver
docker run -d -p 80:80 webserver
  • 2.下载github上某个支持docker部署的项目,举一个例子
git clone https://github.com/firesunCN/BlueLotus_XSSReceiver.git
cd BlueLotus_XSSReceiver
docker build -t bluelotus .              #.表示从当前路径寻找Dockerfile文件,该文件包含了基础镜像、建立容器后运行的指令、端口等信息
docker images                            #这个时候能够看到已建立好的bluelotus镜像
docker run -d -p 80:80 bluelotus         #指定run bluelotus镜像,以建立容器
访问 http://ip/admin.php 密码 bluelotus
  • 3.使用docker-compose一键部署
git clone https://github.com/***/***.git
docker-compose up -d
相关文章
相关标签/搜索