docker容器部署服务常用命令

docker ps 查看所有服务
docker logs + 服务id
docker logs --tail 500 -f +服务id 查看服务实时日志 500为显示行数
df -h 查询磁盘使用情况
free 总体内存占用的查看
docker容器部署服务常用命令

free命令查看内存占用
(1) free命令默认是以kb为单位显示的,可以用free -m 用Mb单位来显示。
(2) Mem行 : total = used + free 其中buffers和cached虽然计算在used内, 但其实为可用内存。
(3)Swap:内存交换区的使用情况。
ps auxw | head -1;ps auxw|sort -rn -k4|head -5 查看内存占用前五的进程
命令分解:
ps auxw显示系统资源占用情况;
head -1表示显示第一列,即标题列;
sort -r 表示反向排序,-n表示按数字排序,-k4表示列的第4个字符。
top 查看系统整体的负载
docker容器部署服务常用命令
(1)第一行: 系统时间 + 系统运行时间 + 几个用户 + 1/5/15分钟系统平均负载
(2)第二行:进程总数(total) + 正在运行进程数(running) + 睡眠进程数(sleeping) + 停止的进程数(stopped)+ 僵尸进程数(zombie)
(3)第三行:用户空间CPU占比(us) + 内核空间CPU占比(sy)+ CPU空置率(id)
注解:
PID :进程ID
USER :用户名
PR :优先级
NI :负值表示高优先级,正值表示低优先级。
VIRT :虚拟内存
RES : 真实内存
SHR :共享内存
S :进程状态 D=不可中断的睡眠状态; R=运行; S=睡眠 ;T=跟踪/停止; Z=僵尸进程
参数:
top -d 2 :每隔2秒显式所有进程的资源占用情况
top -c :每隔5秒显式进程的资源占用情况,并显示进程的命令行参数(默认只有进程名)
top -p 12345 -p 6789:每隔5秒显示pid是12345和pid是6789的两个进程的资源占用情况
top -d 2 -c -p 123456 :每隔2秒显示pid是12345的进程的资源使用情况,并显式该进程启动的命令行参数

docker stats 动态查看Docker容器使用资源情况
docker容器部署服务常用命令
[CONTAINER]:以短格式显示容器的 ID。
[CPU %]:CPU 的使用情况。
[MEM USAGE / LIMIT]:当前使用的内存和最大可以使用的内存。
[MEM %]:以百分比的形式显示内存使用情况。
[NET I/O]:网络 I/O 数据。
[BLOCK I/O]:磁盘 I/O 数据。
[PIDS]:PID 号。

docker stats --no-stream (只返回当前的状态)
docker stats --no-stream 容器ID/Name (只输出指定的容器)
docker stats --format “table {{.Name}}\t{{.CPUPerc}}\t{{.MemUsage}}" (格式化输出的结果)

注:docker-compose 命令 全部依赖于compose.yml配置文件
查看容器运行状态,非 root 用户登录需要通过 sudo 执行
sudo docker-compose ps

启动容器,不指定服务名表示启动所有服务,下同
sudo docker-compose up -d [service]

重新构造容器并启动,当修改 build-ibatchxxx 目录中的内容后需要使用此命令
sudo docker-compose up -d --build [service]

重启所有容器
sudo docker-compose restart [service]

停止所有容器
sudo docker-compose stop [service]

移除容器
docker-compose rm -fs apacheds

重新构建容器
docker-compose up -d