kali安裝docker、配置阿里雲鏡像加速、docker使用


1.需求

  • 最近需要用到docker比較多,遂安裝使用下,第一次用docker搭建測試環境,不得不說,docker真香。期間遇到了比較多奇奇怪怪的問題,網上的教程也比較多比較亂,遂記錄一下。
  • 如果不是在kali上安裝,例如debian9或10可以參考這個鏈接:https://www.myfreax.com/how-to-install-and-use-docker-on-debian-9/

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
//由於版本變化等各種其他復雜原因,如果安裝docker-engine這一步失敗的話,建議改為apt-get install docker.io

systemctl start docker

3.配置阿里雲鏡像下載加速

4.如果發現沒有docker-compose的話,可以按下面的方式安裝

詳見:https://github.com/docker/compose/releases

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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM