Windows 2000 に Redmine をインストール
上記に引き続き、Redmine.JP | Redmineのインストール を参考にして、Windows 2000 に Redmine をインストールします。
sqlite3
SQLite Download Page から sqlitedll-3_5_9.zip をダウンロードします。
ruby.exe と同じ場所に展開 (パスを通すのが面倒なので、また、Windows 関連の有効パスに置くのも気が引けるのでこの場所に展開することとします。)
sqlite3-ruby-1.2.2-mswin32.gem
RubyForge: SQLite-Ruby: ファイルリスト からダウンロード。
> gem install sqlite3-ruby-1.2.2-mswin32.gem --local Successfully installed sqlite3-ruby, version 1.2.2 Installing ri documentation for sqlite3-ruby-1.2.2-mswin32... Installing RDoc documentation for sqlite3-ruby-1.2.2-mswin32...
Redmine
RubyForge: Redmine: ファイルリスト から redmine-0.7.3.tar.gz をダウンロード。解凍して、redmine-0.7.3/config/database.yml を用意し、
production: adapter: sqlite3 dbfile: db/redmine.db timeout: 5000
を書き込みます。で、つぎの rake コマンドを。
> rake db:migrate RAILS_ENV=production (in ..../redmine-0.7.3) == 1 Setup: migrating ========================================================= -- create_table("attachments", {:force=>true}) -> 0.0620s -- create_table("auth_sources", {:force=>true}) -> 0.0470s -- create_table("custom_fields", {:force=>true}) -> 0.0470s -- create_table("custom_fields_projects", {:force=>true, :id=>false}) -> 0.0620s -- create_table("custom_fields_trackers", {:force=>true, :id=>false}) -> 0.0630s -- create_table("custom_values", {:force=>true}) -> 0.0460s -- create_table("documents", {:force=>true}) -> 0.0470s -- add_index("documents", ["project_id"], {:name=>"documents_project_id"}) -> 0.0620s -- create_table("enumerations", {:force=>true}) -> 0.0470s -- create_table("issue_categories", {:force=>true}) -> 0.0620s -- add_index("issue_categories", ["project_id"], {:name=>"issue_categories_proje ct_id"}) -> 0.0630s -- create_table("issue_histories", {:force=>true}) -> 0.0470s -- add_index("issue_histories", ["issue_id"], {:name=>"issue_histories_issue_id" }) -> 0.0630s -- create_table("issue_statuses", {:force=>true}) -> 0.0620s -- create_table("issues", {:force=>true}) -> 0.0630s -- add_index("issues", ["project_id"], {:name=>"issues_project_id"}) -> 0.0620s -- create_table("members", {:force=>true}) -> 0.0630s -- create_table("news", {:force=>true}) -> 0.0470s -- add_index("news", ["project_id"], {:name=>"news_project_id"}) -> 0.0780s -- create_table("permissions", {:force=>true}) -> 0.0470s -- create_table("permissions_roles", {:force=>true, :id=>false}) -> 0.0780s -- add_index("permissions_roles", ["role_id"], {:name=>"permissions_roles_role_i d"}) -> 0.0620s -- create_table("projects", {:force=>true}) -> 0.0630s -- create_table("roles", {:force=>true}) -> 0.0620s -- create_table("tokens", {:force=>true}) -> 0.0790s -- create_table("trackers", {:force=>true}) -> 0.0620s -- create_table("users", {:force=>true}) -> 0.0620s -- create_table("versions", {:force=>true}) -> 0.0620s -- add_index("versions", ["project_id"], {:name=>"versions_project_id"}) -> 0.0630s -- create_table("workflows", {:force=>true}) -> 0.0620s == 1 Setup: migrated (6.2970s) ================================================ == 2 IssueMove: migrating ===================================================== == 2 IssueMove: migrated (0.0630s) ============================================ == 3 IssueAddNote: migrating ================================================== == 3 IssueAddNote: migrated (0.0470s) ========================================= == 4 ExportPdf: migrating ===================================================== == 4 ExportPdf: migrated (0.1250s) ============================================ == 5 IssueStartDate: migrating ================================================ -- add_column(:issues, :start_date, :date) -> 0.1410s -- add_column(:issues, :done_ratio, :integer, {:null=>false, :default=>0}) -> 0.1560s == 5 IssueStartDate: migrated (0.3120s) ======================================= == 6 CalendarAndActivity: migrating =========================================== == 6 CalendarAndActivity: migrated (0.2500s) ================================== == 7 CreateJournals: migrating ================================================ -- create_table(:journals, {:force=>true}) -> 0.0780s -- create_table(:journal_details, {:force=>true}) -> 0.1720s -- add_index("journals", ["journalized_id", "journalized_type"], {:name=>"journa ls_journalized_id"}) -> 0.0470s -- add_index("journal_details", ["journal_id"], {:name=>"journal_details_journal _id"}) -> 0.0470s -- drop_table(:issue_histories) -> 0.0630s == 7 CreateJournals: migrated (0.5000s) ======================================= == 8 CreateUserPreferences: migrating ========================================= -- create_table(:user_preferences) -> 0.0630s == 8 CreateUserPreferences: migrated (0.0630s) ================================ == 9 AddHideMailPref: migrating =============================================== -- add_column(:user_preferences, :hide_mail, :boolean, {:default=>false}) -> 0.1250s == 9 AddHideMailPref: migrated (0.1250s) ====================================== == 10 CreateComments: migrating =============================================== -- create_table(:comments) -> 0.0470s == 10 CreateComments: migrated (0.0470s) ====================================== == 11 AddNewsCommentsCount: migrating ========================================= -- add_column(:news, :comments_count, :integer, {:null=>false, :default=>0}) -> 0.1410s == 11 AddNewsCommentsCount: migrated (0.1410s) ================================ == 12 AddCommentsPermissions: migrating ======================================= == 12 AddCommentsPermissions: migrated (0.1250s) ============================== == 13 CreateQueries: migrating ================================================ -- create_table(:queries, {:force=>true}) -> 0.0630s == 13 CreateQueries: migrated (0.0790s) ======================================= == 14 AddQueriesPermissions: migrating ======================================== == 14 AddQueriesPermissions: migrated (0.0630s) =============================== == 15 CreateRepositories: migrating =========================================== -- create_table(:repositories, {:force=>true}) -> 0.0630s == 15 CreateRepositories: migrated (0.0630s) ================================== == 16 AddRepositoriesPermissions: migrating =================================== == 16 AddRepositoriesPermissions: migrated (0.5000s) ========================== == 17 CreateSettings: migrating =============================================== -- create_table(:settings, {:force=>true}) -> 0.0620s == 17 CreateSettings: migrated (0.0620s) ====================================== == 18 SetDocAndFilesNotifications: migrating ================================== == 18 SetDocAndFilesNotifications: migrated (0.2190s) ========================= == 19 AddIssueStatusPosition: migrating ======================================= -- add_column(:issue_statuses, :position, :integer, {:default=>1}) -> 0.1410s == 19 AddIssueStatusPosition: migrated (0.1560s) ============================== == 20 AddRolePosition: migrating ============================================== -- add_column(:roles, :position, :integer, {:default=>1}) -> 0.1410s == 20 AddRolePosition: migrated (0.1720s) ===================================== == 21 AddTrackerPosition: migrating =========================================== -- add_column(:trackers, :position, :integer, {:default=>1}) -> 0.1560s == 21 AddTrackerPosition: migrated (0.1560s) ================================== == 22 SerializePossiblesValues: migrating ===================================== == 22 SerializePossiblesValues: migrated (0.0000s) ============================ == 23 AddTrackerIsInRoadmap: migrating ======================================== -- add_column(:trackers, :is_in_roadmap, :boolean, {:null=>false, :default=>true }) -> 0.2810s == 23 AddTrackerIsInRoadmap: migrated (0.2970s) =============================== == 24 AddRoadmapPermission: migrating ========================================= == 24 AddRoadmapPermission: migrated (0.0630s) ================================ == 25 AddSearchPermission: migrating ========================================== == 25 AddSearchPermission: migrated (0.0470s) ================================= == 26 AddRepositoryLoginAndPassword: migrating ================================ -- add_column(:repositories, :login, :string, {:default=>"", :limit=>60}) -> 0.1250s -- add_column(:repositories, :password, :string, {:default=>"", :limit=>60}) -> 0.1410s == 26 AddRepositoryLoginAndPassword: migrated (0.2820s) ======================= == 27 CreateWikis: migrating ================================================== -- create_table(:wikis) -> 0.1090s -- add_index(:wikis, :project_id, {:name=>:wikis_project_id}) -> 0.1100s == 27 CreateWikis: migrated (0.2190s) ========================================= == 28 CreateWikiPages: migrating ============================================== -- create_table(:wiki_pages) -> 0.0940s -- add_index(:wiki_pages, [:wiki_id, :title], {:name=>:wiki_pages_wiki_id_title} ) -> 0.1100s == 28 CreateWikiPages: migrated (0.2190s) ===================================== == 29 CreateWikiContents: migrating =========================================== -- create_table(:wiki_contents) -> 0.0780s -- add_index(:wiki_contents, :page_id, {:name=>:wiki_contents_page_id}) -> 0.0930s -- create_table(:wiki_content_versions) -> 0.2810s -- add_index(:wiki_content_versions, :wiki_content_id, {:name=>:wiki_content_ver sions_wcid}) -> 0.1410s == 29 CreateWikiContents: migrated (0.6250s) ================================== == 30 AddProjectsFeedsPermissions: migrating ================================== == 30 AddProjectsFeedsPermissions: migrated (0.0620s) ========================= == 31 AddRepositoryRootUrl: migrating ========================================= -- add_column(:repositories, :root_url, :string, {:default=>"", :limit=>255}) -> 0.1720s == 31 AddRepositoryRootUrl: migrated (0.1720s) ================================ == 32 CreateTimeEntries: migrating ============================================ -- create_table(:time_entries) -> 0.2970s -- add_index(:time_entries, [:project_id], {:name=>:time_entries_project_id}) -> 0.0310s -- add_index(:time_entries, [:issue_id], {:name=>:time_entries_issue_id}) -> 0.0470s == 32 CreateTimeEntries: migrated (0.3900s) =================================== == 33 AddTimelogPermissions: migrating ======================================== == 33 AddTimelogPermissions: migrated (0.0620s) =============================== == 34 CreateChangesets: migrating ============================================= -- create_table(:changesets) -> 0.0470s -- add_index(:changesets, [:repository_id, :revision], {:name=>:changesets_repos _rev, :unique=>true}) -> 0.0620s == 34 CreateChangesets: migrated (0.1090s) ==================================== == 35 CreateChanges: migrating ================================================ -- create_table(:changes) -> 0.0620s -- add_index(:changes, [:changeset_id], {:name=>:changesets_changeset_id}) -> 0.0470s == 35 CreateChanges: migrated (0.1250s) ======================================= == 36 AddChangesetCommitDate: migrating ======================================= -- add_column(:changesets, :commit_date, :date) -> 0.1410s == 36 AddChangesetCommitDate: migrated (0.2030s) ============================== == 37 AddProjectIdentifier: migrating ========================================= -- add_column(:projects, :identifier, :string, {:limit=>20}) -> 0.1560s == 37 AddProjectIdentifier: migrated (0.1560s) ================================ == 38 AddCustomFieldIsFilter: migrating ======================================= -- add_column(:custom_fields, :is_filter, :boolean, {:null=>false, :default=>fal se}) -> 0.2650s == 38 AddCustomFieldIsFilter: migrated (0.2650s) ============================== == 39 CreateWatchers: migrating =============================================== -- create_table(:watchers) -> 0.0470s == 39 CreateWatchers: migrated (0.0470s) ====================================== == 40 CreateChangesetsIssues: migrating ======================================= -- create_table(:changesets_issues, {:id=>false}) -> 0.0630s -- add_index(:changesets_issues, [:changeset_id, :issue_id], {:name=>:changesets _issues_ids, :unique=>true}) -> 0.0460s == 40 CreateChangesetsIssues: migrated (0.1090s) ============================== == 41 RenameCommentToComments: migrating ====================================== == 41 RenameCommentToComments: migrated (0.0620s) ============================= == 42 CreateIssueRelations: migrating ========================================= -- create_table(:issue_relations) -> 0.0470s == 42 CreateIssueRelations: migrated (0.0470s) ================================ == 43 AddRelationsPermissions: migrating ====================================== == 43 AddRelationsPermissions: migrated (0.1090s) ============================= == 44 SetLanguageLengthToFive: migrating ====================================== -- change_column(:users, :language, :string, {:default=>"", :limit=>5}) -> 0.1400s == 44 SetLanguageLengthToFive: migrated (0.1400s) ============================= == 45 CreateBoards: migrating ================================================= -- create_table(:boards) -> 0.0620s -- add_index(:boards, [:project_id], {:name=>:boards_project_id}) -> 0.0630s == 45 CreateBoards: migrated (0.1410s) ======================================== == 46 CreateMessages: migrating =============================================== -- create_table(:messages) -> 0.1100s -- add_index(:messages, [:board_id], {:name=>:messages_board_id}) -> 0.0930s -- add_index(:messages, [:parent_id], {:name=>:messages_parent_id}) -> 0.1090s == 46 CreateMessages: migrated (0.3440s) ====================================== == 47 AddBoardsPermissions: migrating ========================================= == 47 AddBoardsPermissions: migrated (0.7500s) ================================ == 48 AllowNullVersionEffectiveDate: migrating ================================ -- change_column(:versions, :effective_date, :date, {:null=>true, :default=>nil} ) -> 0.3280s == 48 AllowNullVersionEffectiveDate: migrated (0.3280s) ======================= == 49 AddWikiDestroyPagePermission: migrating ================================= == 49 AddWikiDestroyPagePermission: migrated (0.6400s) ======================== == 50 AddWikiAttachmentsPermissions: migrating ================================ == 50 AddWikiAttachmentsPermissions: migrated (1.0470s) ======================= == 51 AddProjectStatus: migrating ============================================= -- add_column(:projects, :status, :integer, {:null=>false, :default=>1}) -> 1.2030s == 51 AddProjectStatus: migrated (1.2030s) ==================================== == 52 AddChangesRevision: migrating =========================================== -- add_column(:changes, :revision, :string) -> 0.9530s == 52 AddChangesRevision: migrated (0.9530s) ================================== == 53 AddChangesBranch: migrating ============================================= -- add_column(:changes, :branch, :string) -> 0.6870s == 53 AddChangesBranch: migrated (0.6870s) ==================================== == 54 AddChangesetsScmid: migrating =========================================== -- add_column(:changesets, :scmid, :string) -> 0.5780s == 54 AddChangesetsScmid: migrated (0.5780s) ================================== == 55 AddRepositoriesType: migrating ========================================== -- add_column(:repositories, :type, :string) -> 1.0940s == 55 AddRepositoriesType: migrated (1.2340s) ================================= == 56 AddRepositoriesChangesPermission: migrating ============================= == 56 AddRepositoriesChangesPermission: migrated (0.0620s) ==================== == 57 AddVersionsWikiPageTitle: migrating ===================================== -- add_column(:versions, :wiki_page_title, :string) -> 0.1710s == 57 AddVersionsWikiPageTitle: migrated (0.1870s) ============================ == 58 AddIssueCategoriesAssignedToId: migrating =============================== -- add_column(:issue_categories, :assigned_to_id, :integer) -> 0.3750s == 58 AddIssueCategoriesAssignedToId: migrated (0.3750s) ====================== == 59 AddRolesAssignable: migrating =========================================== -- add_column(:roles, :assignable, :boolean, {:default=>true}) -> 0.1720s == 59 AddRolesAssignable: migrated (0.1880s) ================================== == 60 ChangeChangesetsCommitterLimit: migrating =============================== -- change_column(:changesets, :committer, :string, {:limit=>nil}) -> 0.0940s == 60 ChangeChangesetsCommitterLimit: migrated (0.1090s) ====================== == 61 AddRolesBuiltin: migrating ============================================== -- add_column(:roles, :builtin, :integer, {:null=>false, :default=>0}) -> 0.5160s == 61 AddRolesBuiltin: migrated (0.5320s) ===================================== == 62 InsertBuiltinRoles: migrating =========================================== == 62 InsertBuiltinRoles: migrated (0.1250s) ================================== == 63 AddRolesPermissions: migrating ========================================== -- add_column(:roles, :permissions, :text) -> 0.1710s == 63 AddRolesPermissions: migrated (0.1710s) ================================= == 64 DropPermissions: migrating ============================================== -- drop_table(:permissions) -> 0.0780s -- drop_table(:permissions_roles) -> 0.2500s == 64 DropPermissions: migrated (0.3430s) ===================================== == 65 AddSettingsUpdatedOn: migrating ========================================= -- add_column(:settings, :updated_on, :timestamp) -> 0.1870s == 65 AddSettingsUpdatedOn: migrated (0.2030s) ================================ == 66 AddCustomValueCustomizedIndex: migrating ================================ -- add_index(:custom_values, [:customized_type, :customized_id], {:name=>:custom _values_customized}) -> 0.0790s == 66 AddCustomValueCustomizedIndex: migrated (0.0790s) ======================= == 67 CreateWikiRedirects: migrating ========================================== -- create_table(:wiki_redirects) -> 0.0630s -- add_index(:wiki_redirects, [:wiki_id, :title], {:name=>:wiki_redirects_wiki_i d_title}) -> 0.0630s == 67 CreateWikiRedirects: migrated (0.1410s) ================================= == 68 CreateEnabledModules: migrating ========================================= -- create_table(:enabled_modules) -> 0.0780s -- add_index(:enabled_modules, [:project_id], {:name=>:enabled_modules_project_i d}) -> 0.0780s == 68 CreateEnabledModules: migrated (0.1880s) ================================ == 69 AddIssuesEstimatedHours: migrating ====================================== -- add_column(:issues, :estimated_hours, :float) -> 0.4070s == 69 AddIssuesEstimatedHours: migrated (0.4070s) ============================= == 70 ChangeAttachmentsContentTypeLimit: migrating ============================ -- change_column(:attachments, :content_type, :string, {:limit=>nil}) -> 0.0940s == 70 ChangeAttachmentsContentTypeLimit: migrated (0.0940s) =================== == 71 AddQueriesColumnNames: migrating ======================================== -- add_column(:queries, :column_names, :text) -> 0.3590s == 71 AddQueriesColumnNames: migrated (0.3750s) =============================== == 72 AddEnumerationsPosition: migrating ====================================== -- add_column(:enumerations, :position, :integer, {:default=>1}) -> 0.1710s == 72 AddEnumerationsPosition: migrated (0.1870s) ============================= == 73 AddEnumerationsIsDefault: migrating ===================================== -- add_column(:enumerations, :is_default, :boolean, {:null=>false, :default=>fal se}) -> 0.1870s == 73 AddEnumerationsIsDefault: migrated (0.2030s) ============================ == 74 AddAuthSourcesTls: migrating ============================================ -- add_column(:auth_sources, :tls, :boolean, {:null=>false, :default=>false}) -> 0.3440s == 74 AddAuthSourcesTls: migrated (0.3440s) =================================== == 75 AddMembersMailNotification: migrating =================================== -- add_column(:members, :mail_notification, :boolean, {:null=>false, :default=>f alse}) -> 0.2030s == 75 AddMembersMailNotification: migrated (0.2030s) ========================== == 76 AllowNullPosition: migrating ============================================ -- change_column(:issue_statuses, :position, :integer, {:null=>true, :default=>1 }) -> 0.0940s -- change_column(:roles, :position, :integer, {:null=>true, :default=>1}) -> 0.2810s -- change_column(:trackers, :position, :integer, {:null=>true, :default=>1}) -> 0.1870s -- change_column(:boards, :position, :integer, {:null=>true, :default=>1}) -> 0.1410s -- change_column(:enumerations, :position, :integer, {:null=>true, :default=>1}) -> 0.0930s == 76 AllowNullPosition: migrated (0.8120s) =================================== == 77 RemoveIssueStatusesHtmlColor: migrating ================================= -- remove_column(:issue_statuses, :html_color) -> 0.0780s == 77 RemoveIssueStatusesHtmlColor: migrated (0.0940s) ======================== == 78 AddCustomFieldsPosition: migrating ====================================== -- add_column(:custom_fields, :position, :integer, {:default=>1}) -> 0.3280s == 78 AddCustomFieldsPosition: migrated (0.3440s) ============================= == 79 AddUserPreferencesTimeZone: migrating =================================== -- add_column(:user_preferences, :time_zone, :string) -> 0.1710s == 79 AddUserPreferencesTimeZone: migrated (0.1710s) ========================== == 80 AddUsersType: migrating ================================================= -- add_column(:users, :type, :string) -> 0.3280s == 80 AddUsersType: migrated (0.4060s) ======================================== == 81 CreateProjectsTrackers: migrating ======================================= -- create_table(:projects_trackers, {:id=>false}) -> 0.0630s -- add_index(:projects_trackers, :project_id, {:name=>:projects_trackers_project _id}) -> 0.0630s == 81 CreateProjectsTrackers: migrated (0.1410s) ============================== == 82 AddMessagesLocked: migrating ============================================ -- add_column(:messages, :locked, :boolean, {:default=>false}) -> 0.2190s == 82 AddMessagesLocked: migrated (0.2350s) =================================== == 83 AddMessagesSticky: migrating ============================================ -- add_column(:messages, :sticky, :integer, {:default=>0}) -> 0.2030s == 83 AddMessagesSticky: migrated (0.2030s) =================================== == 84 ChangeAuthSourcesAccountLimit: migrating ================================ -- change_column(:auth_sources, :account, :string, {:limit=>nil}) -> 0.0940s == 84 ChangeAuthSourcesAccountLimit: migrated (0.0940s) ======================= == 85 AddRoleTrackerOldStatusIndexToWorkflows: migrating ====================== -- add_index(:workflows, [:role_id, :tracker_id, :old_status_id], {:name=>:wkfs_ role_tracker_old_status}) -> 0.0620s == 85 AddRoleTrackerOldStatusIndexToWorkflows: migrated (0.0620s) ============= == 86 AddCustomFieldsSearchable: migrating ==================================== -- add_column(:custom_fields, :searchable, :boolean, {:default=>false}) -> 0.3440s == 86 AddCustomFieldsSearchable: migrated (0.3440s) =========================== == 87 ChangeProjectsDescriptionToText: migrating ============================== -- change_column(:projects, :description, :text, {:null=>true, :default=>nil}) -> 0.0930s == 87 ChangeProjectsDescriptionToText: migrated (0.0930s) ===================== == 88 AddCustomFieldsDefaultValue: migrating ================================== -- add_column(:custom_fields, :default_value, :text) -> 0.1880s == 88 AddCustomFieldsDefaultValue: migrated (0.1880s) ========================= == 89 AddAttachmentsDescription: migrating ==================================== -- add_column(:attachments, :description, :string) -> 0.4060s == 89 AddAttachmentsDescription: migrated (0.4060s) =========================== == 90 ChangeVersionsNameLimit: migrating ====================================== -- change_column(:versions, :name, :string, {:limit=>nil}) -> 0.0780s == 90 ChangeVersionsNameLimit: migrated (0.0780s) ============================= == 91 ChangeChangesetsRevisionToString: migrating ============================= -- change_column(:changesets, :revision, :string, {:null=>false}) -> 0.0780s == 91 ChangeChangesetsRevisionToString: migrated (0.0930s) ==================== == 92 ChangeChangesFromRevisionToString: migrating ============================ -- change_column(:changes, :from_revision, :string) -> 0.0940s == 92 ChangeChangesFromRevisionToString: migrated (0.0940s) ===================
問題ないようなので、さらに次の rake コマンド。
> rake load_default_data RAILS_ENV=production (in .../redmine-0.7.3) Select language: bg, cs, da, de, en, es, fi, fr, he, hu, it, ja, ko, lt, nl, no pl, pt, pt-br, ro, ru, sr, sv, th, uk, zh, zh-tw [en] ja ==================================== Default configuration data loaded. Note: The rake task load_default_data has been deprecated, please use the repla ement version redmine:load_default_data
ここで、config\environment.rb の設定を修正。
# SMTP server configuration config.action_mailer.smtp_settings = { :address => "127.0.0.1", :port => 25, :domain => "somenet.foo", #:authentication => :login, #:user_name => "redmine", #:password => "redmine", }
とりあえず起動。
> ruby script\server -e production
ここで、http://localhost:3000 にアクセスして無事起動しているか確認します。