工作机器常用总结

linux常用命令

# cd进入某个路径
cd /

# ls查看目录或文件夹
ls / #显示目录下所有文件及文件夹
ls -l /data #显示/data目录下所有文件及文件夹详细信息

# cat查看文件内容
cat /sys/devices/system/cpu/online #读取 /sys/devices/system/cpu/路径下online文件内容。
cat test.txt #读取当前路径下test.txt文件内容。

# rm删除文件或文件夹 rm 参数 文件、文件夹
rm test.txt #删除test.txt
rm -f path #强制删除path目录

# mkdir创建文件夹
mkdir /data/logs #创建data->logs文件夹

# cp复制文件夹、文件
cp /data/logs /data/local/logs #把/data下的logs文件夹复制到/data/local下
cp /data/test.txt /list/ #把data下的test.txt文件复制到/list/下

# touch创建文件
touch test.js #在当前文件夹创建test.js

# vim 修改文件
vim test.js #修改test.js

查看docker工作区间

cd ~/workspace/+服务名

docker-compose.yml配置文件

version: '2' # docker-compose 目前拥有 3 个版本。因为每个版本间,均不互相兼容,所以除了第一个版本,其它版本均需执行此关键字
 
services:
 
  oem-frontend:
    image: hub.docker.ipin.com/front/wmzy-pc:oem-latest # image 是从 Docker Hub 的镜像库中导入镜像,使用方法和 Dockerfile 的 FROM 关键字相同
    container_name: oem-frontend  #表示compose启动一个container的命名
    mem_limit: 2048m
    network_mode: host #网络模式 host模式下容器不会获得一个独立的network namespace,而是与宿主机共用一个。这就意味着容器不会有自己的网卡信息,而是使用宿主机的。默认是bridge模式。
    volumes:           #挂载一个目录或者一个已经存在的数据卷容器
      - /data/log/oem_node/oem-frontend:/data/log
      - /data/service/oem_node/config/oem-frontend/config.prod.json:/usr/src/app/config/config.prod.json
#    ports:
#      - "5101:5102" #设置容器映射到本地的端口,可以配置一个或多个端口映射,格式为 $(本地端口):$(容器端口)
    extra_hosts:
      - "javaservers:192.168.150.19"
    logging: &log_opt
      driver: "json-file"
      options:
        max-size: "100k"
        max-file: "20"
 
 
 
#其它未用到的关键字
 
 
#env_file 和 environment 均是设置环境变量的关键字
#restart:配置容器运行中因任何问题停止后的重启方式。通常设置为 always —— 总是重启
#links 和 depends_on 关键字均是配置容器间的链接关系。
# depends_on 配置后,此容器一定在已配置的容器启动成功之后才会启动;links 配置后,容器的启动顺序并无固定关系。

Dockerfile配置文件

# wmzy-pc
# VERSION 1.0.0
# Author: zhuyuanhao
FROM node:10.17-alpine    # FROM 关键字=>导入一个基础镜像作为本镜像的底层(Apline、一个面向安全应用的轻量级系统)
MAINTAINER zhuyuanhao [email protected]
 
 
# Setting time zone (alpine中没有时区数据包)
RUN echo "https://mirrors.ustc.edu.cn/alpine/v3.6/main" > /etc/apk/repositories && \
    echo "https://mirrors.ustc.edu.cn/alpine/v3.6/community" >> /etc/apk/repositories && \
    apk update && apk add ca-certificates && \
    apk add tzdata && \
    ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \
    echo "Asia/Shanghai" > /etc/timezone
 
ENV WORK_DIR /usr/src/app
ENV LOG_DIR /data/log    # 设置镜像内的环境变量
 
RUN mkdir -p $WORK_DIR \
    && mkdir -p $LOG_DIR # RUN 用于构建镜像时,执行命令。在以后启动容器时,并不会再次执行 RUN 的命令
 
WORKDIR $WORK_DIR        # 设置镜像的工作目录
COPY . $WORK_DIR         # ADD 和 COPY 都是往镜像内添加文件或文件夹的命令,但是 ADD 比 COPY 更高级.(ADD特点:1.原路径可以是url 2.tar格式自动解压 3.自动赋予600可读写权限)
 
EXPOSE 8000              # 设置镜像允许外部访问的端口,默认暴露 80 端口
 
CMD ["./node_modules/.bin/pm2-docker", "process.yml"] # 用于在容器启动时,执行命令
# 当 Dockerfile 内含有多个 CMD 命令时,只有最后一个会被执行 (可用ENTRYPOINT替换)
# ENTRYPOINT: 无论在什么情况下启动容器,都会执行;CMD: 在使用 docker run 命令加上参数启动容器时,则会覆盖掉 CMD 后面的命令

docker-compose常用命令

#显示所有容器
docker-compose ps
 
 
#拉取 
docker-compose pull ServiceName
 
 
#构建并启动容器
docker-compose up -d ServiceName 
           
#进入到容器中         
docker-compose exec ServiceName bash  
docker-compose exec ServiceName sh    
 
 
#停止容器
docker-compose stop ServiceName                   
   
#重新启动容器(不会更新容器)
docker-compose restart ServiceName
       
#删除容器(删除前必须关闭容器)
docker-compose rm -f ServiceName                      
 
#查看日志
docker-compose logs  ServiceName      
                
#查看实时日志
docker-compose logs -f ServiceName

nginx

  1. nginx安装目录: cd /etc/nginx/sites-enabled/
  2. 校验配置是否正确:sudo nginx -t
  3. 重启nginx:sudo nginx -s reload

你可能感兴趣的:(工作机器常用总结)