租服务器->安装tmux->装修tmux->安装docker
1.租服务器获得root
ssh root@IP(公)
2.创建用户(acs)
adduser acs
3.给用户分配sudo权限
usermod -aG sudo acs
4.退回AC Terminal
1) 配置别名
vim .ssh/config
Host 别名
HostName IP
User acs
2) 免密登录
ssh-copy-id 服务器别名
5.登录到租的服务器
ssh 服务器别名
6.给毛坯服务器配环境
1) sudo apt-get update
2) 安装tmux
sudo apt-get install tmux
3) 装修tmux
返回AC Terminal
scp .bashrc .vimrc .tmux.conf 服务器别名:
7.在租的服务器的tmux内安装docker,官网4步
1)
sudo apt-get update
sudo apt-get install \
ca-certificates \
curl \
gnupg \
lsb-release
2)
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
3)
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
4)
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin
8.检查docker是否安装成功
docker --version
9.安装其他工具
sudo apt-get install tree
sudo apt-get insatll ipython3
1. 避免每次使用docker命令都需要加上sudo权限:可以将当前用户加入安装中自动创建的docker用户组内
1) 进入服务器
sudo usermod -aG docker $USER
2) 退出服务器,再次进入即可
2.docker基本概念
镜像image相当于模板,每个image都可以生成多个容器container ,相同image生成的container环境相同,每个container相当于一个独立的云端服务器server
container == server
3.镜像image
1) docker pull ubuntu:20.04 拉取一个镜像,从类似GitHub上下载一个镜像
2) docker images
3) docker rmi ubuntu:20.04
4) docker commit CONTAINER IMAGE_NAME:TAG 创建容器的镜像
5) docker save -o ubuntu_20_04.tar ubuntu:20.02 将镜像ubuntu:20.04导出为本地文件ubuntu_20_04.tar
6) docker load -i ubuntu_20_04.tar 将文件ubuntu_20_04加载出来镜像ubuntu:20.04
4.容器container
1) docker create -it ubuntu:20.04 利用image生成一个container
2) docker ps -a 显示所有container
3) docker ps 显示所有运行中的container
4) docker start CONTAINER
5) docker stop CONTAINER
6) docker restart CONTAINER
7) docker attach CONTAINER 进入容器
8) docker run -itd ubuntu:20.04 创建并启动一个容器
8) docker run -it ubuntu:20.04 创建、启动并进入容器
8) docker run -p 20000:22 --name my_docker_server -itd ubuntu:20.04
创建并启动一个容器;修改端口号映射:容器的22端口映射到本地的20000端口;容器名称改为my_docker_server
9) docker exec CONTAINER COMMAND 在容器中执行命令
10) docker rm CONTAINER
11) docker container prune 删除所有已经停止的容器
12) docker export -o xxx.tar CONTAINER 将容器导出为本地文件xxx.tar
13) docker import xxx.tar image_name:tag 将本地文件xxx.tar 导出为镜像并命名为image_name:tag
14) docker top CONTAINER 查看该容器内所有进程
15) docker stats 查看所有容器的信息
16) docker cp xxx CONTAINER:xxx 复制文件:本地到容器
17) docker cp CONTAINER:xxx xxx 复制文件:容器到本地
18) docker rename CONTAINER1 CONTAINER2 容器重命名
19) docker update CONTAINER --memory 500MB 修改容器限制
5.docker export/import 与 docker save/load 区别
export/import : 会丢弃历史记录和元数据信息,仅仅保存容器当前的快照状态
save/load : 会保存完整记录,体积更大
6. 镜像迁移
1) 将镜像保存为本地文件 xxx.tar
2) 将文件 scp 到所需服务器
3) 在该服务器加载该文件,生成镜像
1) scp xxx.tar server_name: 将镜像image上传到自己的服务器
2) ssh server_name 登录自己的服务器
3) docker load -i xxx.tar 将镜像加载到本地
4) docker run -p 20000:22 --name my_docker_server -itd image_name:tag 创建并运行容器
5) docker attach my_docker_server 进入容器(root目录下)
6) passwd 设置root密码