03-Ubuntu18&Docker安装与配置
0 Views SpringCloud with
本文字数:998 字 | 阅读时长 ≈ 4 min

03-Ubuntu18&Docker安装与配置

0 Views SpringCloud with
本文字数:998 字 | 阅读时长 ≈ 4 min

Ubuntu install Docker

Test Env

Name Version
Ubuntu server 18.04.4

Ubuntu install

下载ubuntu server

Tips

建议大家使用低版本开发。

Docker install

  1. 卸载旧版本
$ sudo apt-get install \
    linux-image-extra-$(uname -r) \
    linux-image-extra-virtual
  1. 安装一些必要工具
sudo apt-get update
sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common
  1. 安装GPG证书
curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
  1. 写入软件源信息
sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
  1. 更新并安装Docker CE
sudo apt-get -y update
sudo apt-get -y install docker-ce
  1. 启动Docker CE
$ sudo service docker start
  1. 建立docker用户组
$ sudo groupadd docker
  1. 将当前用户加入docker组
$ sudo usermod -aG docker $USER
  1. 配置Docker镜像加速器
$ vi /etc/docker/daemon.json

{
  "registry-mirrors": [
    "https://registry.docker-cn.com"
  ]
}
  1. 重启Docker服务
$ sudo systemctl daemon-reload
$ sudo systemctl restart docker
  1. 查看docker安装是否正常
$ docker info

出现一大堆docker的配置信息则证明安装正常。

Docker Compose install

官方安装教程:https://docs.docker.com/compose/install/

在其中找到最新的release版本安装。以下使用1.26.0版本:

sudo curl -L "https://github.com/docker/compose/releases/download/1.26.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

sudo chmod +x /usr/local/bin/docker-compose

Docker Shell

Shell Tips
docker info 查看当前docker信息
docker ps 查看当前启动的容器
docker images 查看当前docker中所有镜像列表
docker image stop [id] 删除指定id的镜像
docker container ls 查看当前docker中所有容器
docker container stop [id] 停止正在运行的指定id容器
docker container restart [id] 重启指定id容器
docker container start [id] 运行指定id容器
docker exec -it [id] bash 进入容器
docker-compose up 运行所有容器
docker-compose up -d 后台运行所有容器
docker-compose down 停止up命令启动的所有容器,并移除网络

Ubuntu Shell

防火墙ufw命令:

tycoding@tycoding:~$ ufw -h
ERROR: Invalid syntax

Usage: ufw COMMAND

Commands:
 enable                          enables the firewall
 disable                         disables the firewall
 default ARG                     set default policy
 logging LEVEL                   set logging to LEVEL
 allow ARGS                      add allow rule
 deny ARGS                       add deny rule
 reject ARGS                     add reject rule
 limit ARGS                      add limit rule
 delete RULE|NUM                 delete RULE
 insert NUM RULE                 insert RULE at NUM
 route RULE                      add route RULE
 route delete RULE|NUM           delete route RULE
 route insert NUM RULE           insert route RULE at NUM
 reload                          reload firewall
 reset                           reset firewall
 status                          show firewall status
 status numbered                 show firewall status as numbered list of RULES
 status verbose                  show verbose firewall status
 show ARG                        show firewall report
 version                         display version information

Application profile commands:
 app list                        list application profiles
 app info PROFILE                show information on PROFILE
 app update PROFILE              update PROFILE
 app default ARG                 set default application policy

Ubuntu18设置 ufw防火墙允许ssh连接

当你在本地用ssh user@ip连接虚拟机一直连接不上时,可能是虚拟机没有防火墙没有开放22端口:

你可以尝试关闭ufw防火墙,或开放22端口:

这两种方式都可以让你正常用ssh连接。

允许ssh使用root账户登录

在安装Ubuntu虚拟机时,一般要求我们设置登录账户和密码,但用户名却不允许设置为root,因为Ubuntu内置了root账户,且密码你随机的。

  1. 重置root账户密码为root
sudo passwd root

  1. 编辑/etc/ssh/ssh_config文件,允许root账户登录
sudo vi /etc/ssh/ssh_config

PermitRootLogin prohibit-password修改为PermitRootLogin yes

重启ssh服务:

sudo systemctl restart sshd

那么就能使用ssh root@ip账户登录了:

Tips

在Ubuntu虚拟机上操作docker中可能会出现一些问题:

docker上启动了容器,但在本地连接不上指定的ip端口

栗子:本人在docker上部署的elastcisearch启动后,在本地浏览器上死活无法无法连接9200端口。

可以尝试关闭防火墙;或重启虚拟机(之前是直接将虚拟机挂起的)

Docs

交流

QQGroup:671017003

WeChatGroup: 关注公众号查看

联系

如果这篇文章帮助到了你,你可以请作者喝一杯咖啡