Win10使用Docker快速準備Java相關的開發環境(轉) Win10使用Docker快速準備Java相關的開發環境

Win10使用Docker快速準備Java相關的開發環境

Docker 指令說明:

  1. 用法:docker [OPTIONS]命令
  2. 容器的自足運行時
  3. 選項:
  4. --config string客戶端配置文件的位置(默認值
  5. “C:\\ \\用戶\\管理員泊塢窗”)
  6. -D, - debug啓用調試模式
  7. -H, - 主機列表要連接的守護程序套接字
  8. -l, - log-level string設置日誌記錄級別
  9. ( “調試” | “信息” | “警告” | “錯誤” | “致命”)
  10. (默認“信息”)
  11. --tls使用TLS;由--tlsverify暗示
  12. --tlscacert字符串僅由此CA簽名的信任證書(默認值
  13. “C:\\ \\用戶\\管理員泊塢窗\\ ca.pem”)
  14. --tlscert string TLS證書文件的路徑(默認值
  15. “C:\\ \\用戶\\管理員泊塢窗\\ cert.pem”)
  16. --tlskey string TLS密鑰文件的路徑(默認值
  17. “C:\\ \\用戶\\管理員泊塢窗\\ key.pem”)
  18. --tlsverify使用TLS並驗證遠程
  19. -v, - version打印版本信息並退出
  20. 管理命令:
  21. config 管理Docker配置
  22. container 管理容器
  23. image 管理圖像
  24. network 管理網絡
  25. node 管理Swarm節點
  26. plugin 管理插件
  27. secret 管理Docker的祕密
  28. service 管理服務
  29. stack管理Docker堆棧
  30. swarm管理Swarm
  31. system 管理Docker
  32. trust管理對Docker鏡像的信任
  33. volume 管理卷
  34. 命令:
  35. attach 將本地標準輸入,輸出和錯誤流附加到正在運行的容器
  36. build 從Dockerfile構建映像
  37. commit 從容器的更改創建新圖像
  38. cp 在容器和本地文件系統之間複製文件/文件夾
  39. create 創建一個新容器
  40. diff 檢查容器文件系統上的文件或目錄的更改
  41. events 從服務器獲取實時事件
  42. exec 在正在運行的容器中運行命令
  43. export 將容器的文件系統導出爲tar存檔
  44. history 顯示圖像的歷史記錄
  45. images 列出圖像
  46. import從tarball導入內容以創建文件系統映像
  47. info顯示系統範圍的信息
  48. inspect 返回Docker對象的低級信息
  49. kill殺死一個或多個正在運行的容器
  50. load從tar存檔或STDIN加載圖像
  51. login 登錄Docker註冊表
  52. logout 從Docker註冊表註銷
  53. logs 獲取容器的日誌
  54. pause 暫停一個或多個容器中的所有進程
  55. port 列出端口映射或容器的特定映射
  56. ps 列出容器
  57. pull 從註冊表中提取圖像或存儲庫
  58. push 將映像或存儲庫推送到註冊表
  59. rename 重命名容器
  60. restart 重新啓動一個或多個容器
  61. rm 移除一個或多個容器
  62. rmi 刪除一張或多張圖像
  63. run 在新容器中運行命令
  64. save 將一個或多個圖像保存到tar存檔(默認情況下流式傳輸到STDOUT)
  65. search 在Docker Hub中搜索圖像
  66. start 啓動一個或多個已停止的容器
  67. stats 顯示容器資源使用情況統計信息的實時流
  68. stop 一個或多個正在運行的容器
  69. tag 創建引用SOURCE_IMAGE的標記TARGET_IMAGE
  70. top 顯示容器的運行進程
  71. unause 取消暫停一個或多個容器中的所有進程
  72. update 更新一個或多個容器的配置
  73. version 顯示Docker版本信息
  74. wait 阻止,直到一個或多個容器停止,然後打印退出代碼
  75. 運行'docker COMMAND --help'以獲取有關命令的更多信息。

Docker for Mysql5.7

  1. ==============本地路徑映射到docker容器路徑下====
  2. # 下載 mysql
  3. docker pull mysql:5.7
  4. # 運行容器:
  5. docker run -p 3306:3306 --name mysql5.7 -v D:\DockerWorkspace\mysql\conf:/etc/mysql/conf.d -v D:\DockerWorkspace\mysql\logs:/logs -v D:\DockerWorkspace\mysql\data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7
  6. # 進入容器:
  7. docker exec -it mysql5.7 bash
  8. #登錄mysql
  9. mysql -u root -p
  10. ALTER USER 'root'@'localhost' IDENTIFIED BY 'root';
  11. #添加遠程登錄用戶
  12. CREATE USER 'boonya'@'%' IDENTIFIED WITH mysql_native_password BY 'boonya';
  13. GRANT ALL PRIVILEGES ON *.* TO 'boonya'@'%';
  14. # 客戶端連接測試
  15. boonya/boonya 的遠程賬號登錄。

Docker for Redis

  1. =================本地路徑映射到docker容器路徑下====
  2. # 下載 redis
  3. docker pull redis
  4. #運行容器:
  5. docker run -p 6379:6379 -v D:\DockerWorkspace\redis\data:/data -d redis redis-server --appendonly yes
  6. #連接進入容器
  7. docker exec -it container_id redis-cli
  8. # 進行簡單的測試
  9. 127.0.0.1:6379> set boonya "boonya"
  10. OK
  11. 127.0.0.1:6379> get boonya
  12. "boonya"
  13. 127.0.0.1:6379>

Docker for MongoDB

  1. =================本地路徑映射到docker容器路徑下====
  2. # 下載 mongodb
  3. docker pull mongo
  4. # 運行容器
  5. docker run --name mongo -p 27017:27017 -d mongo -v D:\DockerWorkspace\mongo\db:/data/db #(此處似有bug不能映射數據目錄)
  6. ====>若啓動失敗執行:
  7. docker run --name mongo -p 27017:27017 -d mongo
  8. # 進入容器操作
  9. docker exec -it container_id /bin/bash
  10. # mongo操作創建管理賬號
  11. mongo
  12. use admin
  13. db.createUser({user:"root",pwd:"root",roles:[{role:'root',db:'admin'}]}) //創建用戶,此用戶創建成功,則後續操作都需要用戶認證
  14. exit
  15. #測試管理賬號
  16. mongo 127.0.0.1/admin -uroot -p
  17. ==mongodb默認不需要用戶認證!

Docker for Apche

  1. =============本地路徑映射到docker容器路徑下====
  2. # 下載apache httpd
  3. docker pull httpd
  4. # 啓動容器
  5. docker run -p 80:80 -v D:\DockerWorkspace\apache\Web:/usr/local/apache2/htdocs/ -v D:\DockerWorkspace\apache\logs:/usr/local/apache2/logs/ -d httpd
  6. # 經驗證隱射工作靜態目錄apache比Nginx要簡單.可以實現靜態網站的部署

Docker for Tomcat

  1. ======================本地路徑映射到docker容器路徑下====
  2. # 下載tomcat
  3. docker pull tomcat
  4. #啓動容器
  5. docker run --name tomcat -p 8080:8080 -v D:\DockerWorkspace\tomcat\Web:/usr/local/tomcat/webapps/test -d tomcat
  6. #訪問http://host:8080/test進行驗證,具體需不需要別的子目錄可以直接在webapps這一級映射路徑.

Docker for Nginx

  1. ==============本地路徑映射到docker容器路徑下====
  2. # 下載 nginx
  3. docker pull nginx
  4. # 運行容器:
  5. docker run -p 90:80 --name nginx -v D:\DockerWorkspace\nginx\Web:/usr/share/nginx/html -v D:\DockerWorkspace\nginx\nginx.conf:/etc/nginx/nginx.conf -v D:\DockerWorkspace\nginx\logs:/var/log/nginx -d nginx
  6. #注意 本地需要nginx.conf配置
  7. # nginx內部對應的html地址位於/usr/share/nginx/html
  8. # nginx內部對應的配置文件地址位於/etc/nginx/nginx.conf
  9. # 下面是宿主機上nginx.conf的配置內容
  10. worker_processes 1;
  11. events {
  12. worker_connections 128;
  13. }
  14. http {
  15. include mime.types;
  16. default_type application/octet-stream;
  17. sendfile on;
  18. keepalive_timeout 65;
  19. server {
  20. listen 80;
  21. server_name localhost;
  22. location / {
  23. #替換下面的地址爲您網頁目錄地址
  24. root /usr/share/nginx/html;
  25. index index.html index.htm;
  26. }
  27. error_page 500 502 503 504 /50x.html;
  28. location = /50x.html {
  29. root html;
  30. }
  31. }
  32. }

注意:使用過的宿主端口號不能重複使用,但容器的端口可以是默認監聽的,如80端口,在Apache和Nginx都可以是80.

下載DockerWorkspace目錄

如果需要DockerWorkspace所有目錄下載地址:https://download.csdn.net/download/boonya/10646844

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章