vscode 遠(yuǎn)程連接服務(wù)器docker容器的設(shè)置方法
拉取鏡像
docker pull [options] name [:tag] 表示從倉(cāng)庫(kù)拉取鏡像 options是參數(shù) tag是版本
運(yùn)行鏡像(產(chǎn)生一個(gè)容器)
docker run [options] image [:tag] [command] [arg…]
運(yùn)行一個(gè)容器 以鏡像為模版創(chuàng)建容器 options 操作 tag版本 command 運(yùn)行時(shí)候執(zhí)行的命令 arg 參數(shù)
選項(xiàng) 選項(xiàng)簡(jiǎn)寫(xiě) 說(shuō)明
–detach -d 在后臺(tái)運(yùn)行容器,并且打印容器id。
–interactive -i 即使沒(méi)有連接,也要保持標(biāo)準(zhǔn)輸入保持打開(kāi)狀態(tài),一般與 -t 連用。
–tty -t 分配一個(gè)偽tty,一般與 -i 連用。
docker容器執(zhí)行任務(wù)完成后就會(huì)處于exited狀態(tài),如果想讓容器處于up狀態(tài),可以使用下列命令,如:
使用鏡像nginx:latest以交互模式后臺(tái)啟動(dòng)一個(gè)容器,在容器內(nèi)執(zhí)行/bin/bash命令。
docker run -dit nginx:latest /bin/bash
啟動(dòng)容器
docker start 容器ID
進(jìn)入容器
docker attach 容器ID docker exec -it 容器ID /bin/bash docker exec -it 容器的name bash
查看所有鏡像
列出鏡像列表:docker images [OPTIONS] [REPOSITORY[:TAG]]
退出容器
如果要正常退出不關(guān)閉容器,請(qǐng)按(Ctrl+P+Q)進(jìn)行退出容器
如果使用exit退出,那么在退出之后會(huì)關(guān)閉容器
重啟容器
使用(docker restart 容器id)命令重啟容器
查看所有容器
docker container ls docker ps (查看正在運(yùn)行的容器) docker ps -a (查看所有容器)
刪除容器
我們也可以使用docker container rm命令刪除一個(gè)指定的容器,或簡(jiǎn)潔的寫(xiě)法docker rm命令來(lái)刪除容器,不過(guò)不允許刪除正在運(yùn)行的容器,因此如果要?jiǎng)h除的話,就必須先停止容器。
docker rm container_id
當(dāng)我們需要批量刪除所有容器,可以用下面的命令:
docker rm $(docker ps -q)
批量刪除docker中已經(jīng)停止的容器
方法一:
#顯示所有的容器,過(guò)濾出Exited狀態(tài)的容器,取出這些容器的ID,
sudo docker ps -a|grep Exited|awk '{print $1}'
#查詢所有的容器,過(guò)濾出Exited狀態(tài)的容器,列出容器ID,刪除這些容器
sudo docker rm `docker ps -a|grep Exited|awk '{print $1}'`
方法二:
#刪除所有未運(yùn)行的容器(已經(jīng)運(yùn)行的刪除不了,未運(yùn)行的就一起被刪除了) sudo docker rm $(sudo docker ps -a -q)
方法三:
#根據(jù)容器的狀態(tài),刪除Exited狀態(tài)的容器 sudo docker rm $(sudo docker ps -qf status=exited)
方法四:
#Docker 1.13版本以后,可以使用 docker containers prune 命令,刪除孤立的容器。
vscode通過(guò)ssh遠(yuǎn)程連接服務(wù)器中的容器
1.運(yùn)行ubuntu鏡像來(lái)創(chuàng)建容器:
docker run -it ubuntu
2.進(jìn)入容器,設(shè)置容器root密碼
修改容器的root密碼:passwd
密碼設(shè)置為:123456
3.安裝ssh服務(wù)
apt-get update apt-get install openssh-server
4.修改ssh配置,允許root登錄,一般進(jìn)入容器時(shí)使用的都是 root 賬號(hào),但是 ssh 默認(rèn)是禁止 root 賬號(hào)使用密碼遠(yuǎn)程登錄的,所以需要修改 ssh 配置文件使其允許:
vim /etc/ssh/sshd_config 將PermitRootLogin的值從withoutPassword改為yes(去掉前面的#號(hào)) 如果沒(méi)有vim可以安裝個(gè): apt-get install vim
5.保存容器修改并生成新的鏡像
docker commit <container_id> <new_image_name> 如 docker commit <container_id> ubuntu-ssh
6.退出當(dāng)前容器,并運(yùn)行剛剛保存的新鏡像(這次運(yùn)行要端口映射并在后臺(tái)運(yùn)行)
exit(exit退出后會(huì)關(guān)閉容器) docker run -dit -p 8008:22 ubuntu-ssh (8008時(shí)端口號(hào),ssh連接時(shí)要使用)
7.通過(guò)exec命令進(jìn)入在后臺(tái)運(yùn)行的容器
docker exec -it 容器_id /bin/bash #exec是進(jìn)入已經(jīng)存在的容器,run是創(chuàng)建新容器
8.啟動(dòng)ssh服務(wù)
sudo service ssh start
另外(stop restart分別為關(guān)閉和重啟)
9.判斷啟動(dòng)是否成功
在終端中輸入:ps -e|grep ssh,可以查看是否啟動(dòng)成功,如果有sshd,就說(shuō)明啟動(dòng)成功。
輸出如下:
$ sudo ps -e | grep ssh 4031 ? 00:00:00 sshd------對(duì)應(yīng)服務(wù)器端 sshd表示ssh-server啟動(dòng)了
10退出容器但不要關(guān)閉
exit(因?yàn)槲覀兪峭ㄟ^(guò)exec指令進(jìn)入容器的,所以exit時(shí)并不會(huì)退出容器,容器會(huì)在后臺(tái)運(yùn)行)
11遠(yuǎn)程連接
ssh root@host_id -p 8008
到此這篇關(guān)于vscode 遠(yuǎn)程連接服務(wù)器docker容器的設(shè)置方法的文章就介紹到這了,更多相關(guān)vscode 遠(yuǎn)程連接docker內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- vscode中啟用docker擴(kuò)展顯示無(wú)權(quán)限的問(wèn)題解決
- VSCode連接遠(yuǎn)程docker環(huán)境操作步驟
- 在vscode中使用ssh運(yùn)行docker:從下載到運(yùn)行全流程
- vscode進(jìn)入服務(wù)器docker容器的方法
- vscode利用ssh配置docker容器并開(kāi)啟遠(yuǎn)程編程模式的詳細(xì)步驟
- 使用Vscode結(jié)合docker進(jìn)行開(kāi)發(fā)的詳細(xì)過(guò)程
- 解決vscode docker插件docker.socket權(quán)限問(wèn)題
- Docker+Vscode搭建(本地/遠(yuǎn)程)開(kāi)發(fā)環(huán)境
相關(guān)文章
Windows11上Docker Desktop鏡像源配置失效排查與解決方案
這篇文章主要介紹了Windows11上Docker Desktop鏡像源配置失效排查與解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2025-04-04
利用docker部署nextcloud 網(wǎng)盤(pán)的方法步驟
NextCloud 你可以在自己的計(jì)算機(jī)上共享任何文件或文件夾,并將它們與 NextCloud 服務(wù)器同步。這篇文章主要介紹了利用docker部署nextcloud 網(wǎng)盤(pán)的方法步驟,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2018-11-11
Docker?監(jiān)控平臺(tái)部署的兩種實(shí)現(xiàn)步驟
本文主要介紹了Docker?監(jiān)控平臺(tái)部署的兩種實(shí)現(xiàn)步驟,包括cAdvisor、Prometheus和Grafana,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2025-11-11
如何通過(guò)Jenkins定期清理為None的鏡像詳解
這篇文章主要給大家介紹了關(guān)于如何通過(guò)Jenkins定期清理為None的鏡像的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2018-11-11
Docker 啟動(dòng)Redis 并設(shè)置密碼的操作
這篇文章主要介紹了Docker 啟動(dòng)Redis 并設(shè)置密碼的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-11-11
Docker部署Logstash同步Mysql數(shù)據(jù)到ES方式
本文介紹了如何搭建ELK(Elasticsearch, Logstash, Kibana)日志系統(tǒng),包括配置文件準(zhǔn)備、Logstash與Elasticsearch部署、驅(qū)動(dòng)文件準(zhǔn)備、配置文件編輯、容器操作以及日志查看等步驟,文章內(nèi)容是作者的個(gè)人經(jīng)驗(yàn)分享2024-10-10
Docker安裝Nginx問(wèn)題及錯(cuò)誤分析
這篇文章主要介紹了Docker安裝Nginx的問(wèn)題及錯(cuò)誤分析正確的操作方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-12-12
Docker 創(chuàng)建容器后再修改 hostname的詳細(xì)過(guò)程
這篇文章主要介紹了Docker 創(chuàng)建容器后再修改 hostname的詳細(xì)過(guò)程,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-10-10

