0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

DockerでQiita CLI環境を構築する

Last updated at Posted at 2025-05-05

はじめに

最近はQiita記事の執筆に生成AIを活用して、マークダウンで記事を書くことが増えてきました。
それを手動でQiitaに書き写しており面倒だったので、Qiita CLIを使ってマークダウンのまま、記事を投稿してみようと思いました。

Qiita CLIを使うことで、ローカル環境でQiita記事を執筆・プレビュー・投稿できるようになり、
さらにDockerを使用することで、クリーンで再現性の高い執筆環境を構築できます。

本記事では、Dockerを使用してQiita CLI環境を構築する方法を紹介します。

前提

  • Docker Desktopがインストールされている
  • Qiitaのアカウントを持っている
  • ターミナルの基本的な操作ができる

手順

1. プロジェクトの準備

まず、プロジェクトのディレクトリを作成し、必要なファイルを用意します:

mkdir qiita-cli
cd qiita-cli

2. Dockerfileの作成

以下の内容でDockerfileを作成します:

FROM node:23-slim

WORKDIR /app    

RUN apt-get update && \
    apt-get install -y git && \
    npm install -g @qiita/qiita-cli && \
    apt-get clean && \
    rm -rf /var/lib/apt/lists/*

# Node.jsの環境変数を設定
ENV NODE_ENV=production
ENV NODE_OPTIONS=--no-warnings

CMD ["sleep", "infinity"]

3. docker-compose.ymlの作成

以下の内容でdocker-compose.ymlを作成します:

services:
  qiita-cli:
    build: .
    volumes:
      - ./:/app
    ports:
      - "8888:8888"
    environment:
      - QIITA_TOKEN=${QIITA_TOKEN}
    tty: true
    extra_hosts:
      - "host.docker.internal:host-gateway"

networks:
  qiita-network:
    driver: bridge

4. qiita.config.jsonの作成(プレビュー設定)

以下の内容でqiita.config.jsonを作成します:

{
  "includePrivate": false,
  "host": "0.0.0.0",
  "port": 8888
}

5. Qiita APIトークンの取得と設定

  1. Qiitaの設定ページにアクセス
  2. 新しいトークンを作成(read_qiitawrite_qiitaの権限が必要)
  3. .envファイルを作成し、以下の内容を追加:
    QIITA_TOKEN=your_qiita_token
    

6. 環境の起動

以下のコマンドでDocker環境を起動します:

docker-compose up -d

7. 記事の作成と管理

新規記事の作成

docker-compose exec qiita-cli qiita new my-article

プレビュー

docker-compose exec qiita-cli qiita preview

ブラウザでhttp://localhost:8888にアクセスすると、記事のプレビューが表示されます。

記事の投稿

docker-compose exec qiita-cli qiita publish my-article

まとめ

Docker環境でQiita CLIを使用することで、ローカル環境を汚さずにQiita記事の執筆・プレビュー・投稿が可能になります。
画像だけ事前のアップロードが必要ですが、生成AIを活用して記事の執筆を効率化するために活用してみてください。

参考

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?