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
相關文章
相關標籤/搜索